Efficient quantum voting with information-theoretic security

ABSTRACT

Efficient quantum voting with information-theoretic security is provided. A tally quantum node generates a first plurality of ballot quantum states encoding a first bit string, each of the first plurality of ballot quantum states comprising a plurality of qubits. Each of the first plurality of ballot quantum states are distributed to exactly one of a plurality of voter quantum nodes via a quantum network. At least one of the plurality of voter quantum nodes: performs a projective measurement of its one of the first plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the first bit string; reads a vote; computes a first encoded vote based on the parity and vote; broadcasts the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes. The first bit string is provided to decode the first encoded vote.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No. 63/291,698, filed Dec. 20, 2021, which is hereby incorporated by reference in its entirety.

BACKGROUND

Embodiments of the present disclosure relate to technologies for conducting votes using quantum computers, and more specifically to efficient quantum voting with information-theoretic security.

BRIEF SUMMARY

According to embodiments of the present disclosure, methods of conducting a vote using a quantum network are provided. A tally quantum node generates a first plurality of ballot quantum states encoding a first bit string, each of the first plurality of ballot quantum states comprising a plurality of qubits. Each of the first plurality of ballot quantum states are distributed to exactly one of a plurality of voter quantum nodes via a quantum network. At least one of the plurality of voter quantum nodes: performs a projective measurement of its one of the first plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the first bit string; reads a vote; computes a first encoded vote based on the parity and vote; broadcasts the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes. The first bit string is provided to decode the first encoded vote.

According to embodiments of the present disclosure, methods of casting a vote using a quantum network are provided. A ballot quantum state is received via a quantum network, the ballot quantum state encoding a first bit string in a plurality of qubits. A projective measurement of its one of the first plurality of ballot quantum states is performed, and thereby determining a parity of a random pair of bits of the first bit string. A vote is read. A first encoded vote is computed based on the parity and vote. The first encoded vote and an identifier of the pair of bits is broadcast to each other of the plurality of voter quantum nodes.

According to embodiments of the present disclosure, methods of tallying a vote using a quantum network are provided. A plurality of encoded votes is received, each with an associated identify. Each associated identifier identifies a pair of bits randomly selected from a predetermined bit string. Each encoded vote is based on a vote and a parity, the parity being based on a projective measurement of a ballot quantum state encoding the predetermined bit string. The predetermined bit string is received. Based on the predetermined bit string and the associated identifiers, the plurality of encoded votes is decoded. The plurality of decoded votes is tallied.

According to embodiments of the present disclosure, systems for quantum voting are provided. In various embodiments, the systems comprise a quantum network; a tally quantum node operatively coupled to the quantum network; and a plurality of voter quantum nodes operatively coupled to the quantum network. The tally quantum node is configured to: generate a first plurality of ballot quantum states encoding a first bit string, each of the first plurality of ballot quantum states comprising a plurality of qubits; distribute each of the first plurality of ballot quantum states to exactly one of the plurality of voter quantum nodes via the quantum network. Each of the plurality of voter quantum nodes is configured to: perform a projective measurement of its one of the first plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the first bit string; read a vote; compute a first encoded vote based on the parity and vote; and broadcast the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes via the quantum network.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1A is a graph of an example voting protocol where a tallyman distributes entangled pairs to voters.

FIG. 1B is a graph of an example voting protocol where shared entanglement enables anonymous transmission of a quantum state encoding.

FIG. 2 is a graph of an example ballot state.

FIG. 3A is a diagram representing an example hidden matching communication problem where to create a ballot state, the tallyman first generates a single photon in a superposition of time bins.

FIG. 3B is a diagram representing an example hidden matching communication problem where Bell pairs are created by reflecting a time-bin photonic qubit off two cavities, followed by measurement.

FIG. 4 is pseudocode of an example decision function that calculates an election winner by averaging over election rounds to suppress adversarial votes.

FIG. 5 is pseudocode of an example protocol for anonymous state transfer.

FIG. 6 is pseudocode of an example protocol to compute distributed secure sums.

FIG. 7 is pseudocode of an example protocol to instantiate an anonymous queue that delegates the order in which the voters cast their vote.

FIG. 8 is pseudocode of an example protocol used by the voters to cast their votes.

FIG. 9 is a diagram of an example illustrating embodiments in which voters receive several copies of the ballot state from multiple tallymen.

FIG. 10 depicts a computing node according to embodiments of the present disclosure.

DETAILED DESCRIPTION

Ensuring security and integrity of elections constitutes an important challenge with wide-ranging societal implications. Classically, security guarantees can be ensured based on computational complexity, which may be challenged by quantum computers. In some embodiments, the use of quantum networks can enable information-theoretic security for the desirable aspects of a distributed voting scheme in a resource-efficient manner. In one approach, ballot information is encoded in quantum states that enable an exponential reduction in communication complexity compared to classical communication. In addition, embodiments of the present disclosure, methods and computer program products provide an efficient and secure anonymous queuing protocol. As a result, the scheme only requires modest quantum memories with size scaling logarithmically with the number of voters. This intrinsic efficiency together with certain noise-robustness of the protocol paves the way for its physical implementation in realistic quantum networks.

Voting protocols have been studied extensively in classical cryptography and numerous classical voting protocols have been developed. To have a fair and secure voting outcome, an ideal protocol should meet the following requirements:

-   Correctness: With no adversary interference, the protocol correctly     counts all voters. -   Accountability: Only eligible voters are allowed to vote with only     one vote per voter. -   Verifiability: Voters should be able to verify their vote and the     outcome of the election. -   Anonymity: The identity of the voter cannot be compromised.

Referring to FIG. 1 , an overview of the voting protocol according to various embodiments is provided. In FIG. 1A, a tallyman T distributes entangled pairs |ø⁺〉 to voters V_(i), connecting themselves in a ring. In FIG. 1B, the shared entanglement enables (i) anonymous transmission of a quantum state encoding a collection of random bits (depicted as nodes of a graph) and (ii) anonymous broadcasting of votes, which are masked by a single obtained parity of two random bits (depicted as an edge on the graph).

The security of advanced voting protocols relies on assumptions about the computational complexity of certain mathematical problems, such as integer factorization. However, some of these problems can be potentially solved efficiently on future large-scale quantum computers. At the same time, quantum systems may allow the sharing of quantum information between voters that can, in principle, avoid computational assumptions in favor of information-theoretic security. Even if the encrypted information is stored, no future advances in computational power will enable its decoding. This observation has spurred active development of quantum voting protocols, see, e.g., for a recent review. However, existing approaches are either inefficient or do not satisfy all desirable security criteria. While early contributions explored the use of distributed entangled states to compute the voting function, their security is not rigorously established, especially in practical settings. For instance, quantum communication that is exponential in the number of voters is required to prevent double voting.

In this specification, a novel approach to this problem is described that exploits an exponential separation between quantum and classical communication complexity to authenticate voters and prevent forgery. The scheme features a (generally untrusted) tallyman that distributes ballots encoded in quantum states to the voters. A special encoding is used that provides an exponential reduction in communication complexity compared to classical encodings for solving a specific matching problem. This feature is related to a threshold for locally decodable codes and serves as the basis for unforgeable quantum money. The communication advantage is used to ensure efficient scaling of resources for many voters. Specifically, the total number of qubits communicated in the scheme scales polynomially with the number of voters and the size of local qubit memories scales only logarithmically with the number of voters.

Other advantages also include that the specific encoding prevents forgery of votes. More precisely, the voter can only learn enough information to output one vote, via projective measurement that collapses the quantum state encoding ballot information.

In some embodiments, the ballot state is distributed to voters via quantum teleportation using pre-shared entanglement. In the case of an untrusted tallyman, anonymous state teleportation schemes can be employed to ensure voter anonymity. Distributed computation of the voting function is enabled by anonymous broadcast of the voters’ ballots and encrypted votes. To enable secure collision detection for both subroutines, a previous single-bit scheme allows computation of a distributed sum efficiently and prove its information security. It improves the efficiency of the anonymous state transfer and broadcast by queuing the senders in advance. In contrast, commonly used classical collision detection relies on pairwise authenticated channels (consuming more resources) and has not been proven secure against quantum adversaries. Note that compared to prior quantum secure summation protocols, the approach shares the output with all parties while retaining efficiency.

In some embodiments, the tallyman is required to create and teleport the ballot state to each voter using photonic channels. The voters can do permutations of the computational basis states allowing them to measure the ballot state in different bases. This can be achieved using one quantum node per voter containing a number of memory qubits that only scales logarithmically with the total number of voters. Consequently, quantum nodes with only tens of qubits are required for thousands of voters.

In some embodiments, it is assumed that the scheme has an honest majority of tallymen. It is necessary in general to achieve multiparty secure computation. In this specification, the protocol is described using perfect quantum operations. However, the security of the scheme is not broken in the presence of imperfections. In practice, given faulty operations, the scheme may need to be run more times to output the outcome without aborting.

The main result can be summarized as (formalized later in Theorem 5) the desirable cryptographic properties of a voting scheme can be satisfied for N voters with information-theoretic security with efficient scaling involving total quantum communication of O(N⁴log N) qubits and 0(log N) memory qubits per voter.

The Voting Scheme

At a high level, the voting protocol consists of the following phases:

-   Ordering the voters anonymously in a queue. -   Distribution of ballots to voters in order. -   Writing up to one vote per ballot by the voters. -   Collection of ballots from voters in order. -   Verifying that voting ran correctly and aborting otherwise. -   Counting of votes.

The first five steps are implemented with quantum algorithms. The last step is done classically. For brevity, specific steps of the voting scheme are described assuming a trusted tallyman. The voting scheme is also described based on amendments to the scheme that allow for an untrusted tallyman. Further description includes how the ballots need to be distributed anonymously and the resource cost of the voting scheme.

Creating the Quantum Ballots

In some embodiments, the protocol begins with the tallyman sampling a random bit string

$x\overset{R}{\leftarrow}\left\{ {0,1} \right\}^{n}$

of n bits. As discussed later, n = O(N²), where N is the number of voters, to ensure that the protocol runs correctly. For instance, n = 6 and the sampled bit string is x = 101100.

In some embodiments, the tallyman prepares N copies of the ballot state

$\begin{matrix} {\left| \text{ψ}_{x} \right\rangle = \frac{1}{\sqrt{n}}{\sum\limits_{i = 0}^{n - 1}{\left( {- 1} \right)^{x_{i}}\left| i \right\rangle}}} & \text{­­­Equation 1} \end{matrix}$

Here, x_(i)is the i^(th) bit of x. The quantum state can be encoded across ┌log n┐ qubits using a binary encoding of i. Following the example of x=101100, the state |ψ_(x)〉 is

$\begin{matrix} {\frac{1}{\sqrt{6}}\left( {- \left| 000 \right\rangle + \left| 001 \right\rangle - \left| 010 \right\rangle - \left| 011 \right\rangle + \left| 100 \right\rangle +} \right)\left| 101 \right\rangle} & \text{­­­Equation 2} \end{matrix}$

where |000〉 ≡ |0〉 ⊗ |0〉 ⊗ |0〉 denotes a three-qubit state.

In some embodiments, after creating the ballot states, the tallyman distributes one ballot state to each voter. Using quantum teleportation, only ┌log n┐ Bell pairs need to be shared between each voter and the tallyman due to the efficient qubit encoding of x.

Casting a Vote

In some embodiments, having received a quantum ballot state, a voter can, by means of a projective measurement, learn the parity of two random bits from the encoded bit string x. As an illustration, each of the basis states |i〉 can be viewed as nodes. Measuring in the basis |i〉 would correspond to projecting at random on one of the nodes. Instead, a voter randomly chooses another complete measurement basis consisting of projectors on superpositions of two states

$\frac{1}{\sqrt{2}}\left( {\left| i \right\rangle \pm \left| j \right\rangle} \right)$

(where i ≠ j). This can be viewed as picking a pairwise matching of all the nodes and projecting on a single random edge of the corresponding matching (See FIG. 2 ). Following the above example, a measurement basis could, e.g., consist of projectors on states

$\begin{matrix} {\frac{1}{\sqrt{2}}\left\{ {\left| 000 \right\rangle \pm \left| 011 \right\rangle,\left| 001 \right\rangle \pm \left| 100 \right\rangle,\left| 010 \right\rangle \pm \left| 101 \right\rangle} \right\}} & \text{­­­Equation 3} \end{matrix}$

By this measurement, the voter learns the parity between bit x_(i) and x_(j) since obtaining measurement outcome |i〉± |j〉 corresponds to the parity of x_(i) and x_(j) being even (+) or odd (-).

Referring to FIG. 2 , a graph representation of the ballot state is provided. On the left, the basis states are viewed as nodes that are either empty or filled corresponding to whether they encode a 0 or 1 bit of the bit string x. The depicted nodes correspond to the state in Equation 2. At right, the measurement performed by a voter corresponds to picking a random pairwise matching of the nodes and projecting onto one of the edges at random. The graph depicted corresponds to obtaining measurement outcome |000〉 + |011〉 (solid line), having measured in the basis defined in Equation 3.

In some embodiments, the voter classically encodes their vote v ∈ {0,1} by calculating the vote bit a = p ⊕ v where ⊕ denotes addition modulo 2. Here, the notion that even (odd) parity is assigned bit value p = 0(p = 1) is used. More than two choices in the election can still be encoded in binary and evaluated with each bit corresponding to an independent election; for example, a third choice could be a default null vote. To compute the voting function, the voters can broadcast their measured edge (i, j) and their vote bit a as described below. Once all voters have broadcasted their masked votes, the bit string x can be revealed by the tallyman. This enables the voters to decode each other’s votes having the complete information of x.

Importantly, x is not to be revealed until after all voters have cast their votes (the case of a dishonest tallyman is treated below). In this way, a correct encoding and subsequent decoding of a vote can only be guaranteed if the voter can sample the correct parity of an edge from measurement of the ballot state. In what follows, a proof is provided, that given k copies of the ballot state, a voter will only be able to obtain the parity of k distinct edges (meaning that the edges do not share a node) in a deterministic fashion. Obtaining more than k parities can only be achieved by randomly guessing a parity with a success probability of ½.

In some embodiments, double voting can be ruled out by repeating the voting protocol O(N) times and averaging the votes over the rounds. If any collection of k voters (having access to k ballot states) tries to output more than k votes, they can only do so by randomly guessing parities for the extra votes, which will average to an even number of 0 and 1 votes over the repetitions and will cancel upon calculating the margin of the election.

The above arguments necessitate that only votes from distinct edges are counted. Otherwise, a vote can be forged, since x_(i) ⊕ x_(j) = (x_(i) ⊕ x_(k)) ⊕ (x_(k) ⊕ x_(j)). In the case that two voters share a node, only the first one broadcasted will be counted. The choice not to abort the protocol if overlapping edges appear prevents denial-of-service attacks, as detailed below, but poses the problem that two honest voters might sample overlapping edges by chance, which would result in one of the votes not being counted correctly. However, by increasing the length of the bit string n, the probability of this event can be made arbitrarily small. The number of qubits only scales as log n, implying efficient use of quantum resources.

Anonymous Queuing

In some embodiments, the broadcast of the vote bits should be anonymous to retain privacy. For this, the one-bit anonymous broadcast scheme is used repeatedly to broadcast both the edge and the agreement of a voter. The protocol assumes that the voters share a GHZ (Greenberger-Horne-Zeilinger) state. A GHZ state can be distilled from a ring of Bell pairs connecting the voters and the tallyman performing a CNOT gate followed by a measurement on the target qubit combines Bell pairs into the nodes of a GHZ state, up to local single-qubit rotations. Each GHZ state can be used to anonymously broadcast one bit of classical information. The anonymity is linked with the fidelity of the GHZ state, which can be estimated by the voters through random checks of the correlations in the state. In other words, the voters either choose to use a GHZ state for transfer or for testing. In this way, they can detect if an adversary tries to compromise anonymity, since the attempt will corrupt the correlations in the GHZ state.

One complication of the above protocol is that one ring of Bell pairs only allows a single voter to broadcast one bit. However, to cast a vote, the voters need to broadcast both the edge (i, j) of their ballot and their vote bit a, corresponding to 2 log n + 1 bits of classical information. Therefore, voters need to be queued such that the order in which the bits are broadcasted is known. At the same time, collisions where two voters try to broadcast simultaneously are prevented. Here, a position in the queue corresponds to a collection of 0 (N log n) Bell pairs used to broadcast the vote information of one voter. Previous works have used a classical collision detection algorithm, which relies on pairwise authenticated channels between the voters and has not been proven secure against quantum adversaries.

In some embodiments, the protocol uses an anonymous queuing algorithm. It uses a multiparty secure sum that can be viewed as a generalization of the one-bit protocol of. Assuming that the voters share entangled states of the form

$\begin{matrix} {\frac{1}{\sqrt{M}}\left( {\left| o \right\rangle^{\{{\otimes N}\}} + \cdots + \left| {M - 1} \right\rangle^{\{{\otimes N}\}}} \right\rbrack.} & \text{­­­Equation 4} \end{matrix}$

Here, M = 2^([logN]) and the above state therefore corresponds to sharing [log N] GHZ states between the voters. The voter broadcasting applies Z^(a), where Z is the M-dimensional phase shift and a ∈ {0, ..., d - 1} is the announcement. Then, every voter applies the M-dimensional quantum Fourier transform on their share of the state, followed by measurement in the computational basis. If everyone announces their measurement outcome k_(l), anyone can sum them together to obtain the announcement:

$\begin{matrix} {a = {\sum\limits_{l = 1}^{N}k_{l}}} & \text{­­­Equation 5} \end{matrix}$

Thus, the correlations in the GHZ state act like a key. For multiple voters inputting an announcement, a sum is computed anonymously, up to a value M. It enables collision detection in the queuing algorithm. Namely, voters attempt to enter the queue with equal probability so that on average, one voter tries to enter in a single round. To enter the queue, a voter broadcast 1 instead of 0. If the sum does not equal 1, the queuing failed because either no voters entered or several collided. Meanwhile, a sum of 1 is viewed as a success. Upon failure, the algorithm resamples. On average, the number of runs to fill the queue is O(N).

The anonymity of the queue is key to the security of the scheme. Namely, if the positions of voters is revealed, then an adversary learns which voter broadcasted a particular vote bit and edge. At the end of the election, they can check the voter’s vote similar to the honest voter; see below.

Obtaining the Election Result

After being queued, the voters broadcast their encrypted votes using the one-bit anonymous broadcast scheme. Each voter now has every other voter’s information but cannot decrypt it until the tallyman reveals x. With the tallyman’s announcement, each voter classically computes parities and adds them to corresponding agreement bits:

$\begin{matrix} {p_{i} \oplus a_{i} = p_{i} \oplus \left( {p_{i} \oplus v_{i}} \right)} & \text{­­­Equation 6} \end{matrix}$

$\begin{matrix} {= v_{i}} & \text{­­­Equation 7} \end{matrix}$

The resulting votes are compiled in a function to decide the outcome of the election. In order to ensure accountability (prevent double voting), the election is repeated O(N) times, averaging the tallies. Each voter then calculates the margin, which suffices to cancel any adversarial votes and determines the winner in majority vote.

Verification of GHZ States

In order to ensure anonymity in the queuing the process, it is critical to verify that the shared states used by the voters are close to an idealized GHZ state. This requires running a verification protocol where each voter i ∈ [n] chooses a measurement based on the realization of a random bit string

{X_(i)}_(i = 1)^(N)

chosen by the tallyman. If is 1, the voter i performs a Hadamard operation, else the voter applies a Pauli Z transformation. The post-op measurements Y_(i) are made in the Z-basis, and accepted if an only if:

$\begin{matrix} {{\sum\limits_{i = 1}^{n}Y_{i}} = \frac{1}{2}{\sum\limits_{i = 1}^{n}{X_{i}mod}}\mspace{6mu} 2\mspace{6mu}.} & \text{­­­Equation 8} \end{matrix}$

The above procedure is repeated log(N) times, and the tallyman accepts if the test passes each time. The entire test is repeated O(N) times to ensure desirable success probability.

Anytime that voters notice deviation from the honest behavior of the protocol, they anonymously complain at the end of a round. The first trigger for a complaint is when GHZ state verification fails. Voters also choose their vote randomly, so as not to reveal the true value. Second, at the end of the voting round, voters verify that their own vote is counted correctly and not flipped due to, e.g., a corruption of their ballot state.

Complaints are filed by encoding into a secure sum, similar to what is described above, so the number of complaints per round is known. If, on average, the margin of the election is greater than twice the number of complaints, then the compromised votes would not affect the outcome and the election result holds. Otherwise, the election is aborted.

Dishonest Tallyman

The tallyman has complete knowledge of x, so they have additional power compared to the voters. Specifically, a dishonest tallyman can output extra votes and might tamper with the ballot states to compromise the anonymity of the voters. To avoid putting trust in the tallyman to behave honestly, two amendments to the voting protocol is introduced.

First, to circumvent extra votes outputted by the tallyman, the election is run in parallel with different tallymen with independent, private randomness. Each of these elections should yield the same result if the tallymen are honest, and the only assumption required is the presence of an honest majority. Any dishonest tallymen will be identified through the discrepancy in the outcome of their elections and there is thus a risk of exposure if a tallyman chooses to behave dishonestly. The independence in the randomness implies that dishonest tallymen cannot initiate attacks based on correlated randomness with honest tallymen.

Second, to ensure the anonymity of the voters, the ballot states are teleported anonymously to them. This way, the tallyman might tamper with a ballot state but will have no information about which voter received the tampered ballot. Consequently, anonymity will not be compromised.

Anonymous Transfer

To anonymously teleport the ballot states, anonymous quantum state transfer is used. Similar to anonymous broadcast, this protocol relies on shared GHZ states among the voters and the tallyman. From the GHZ state, a Bell pair is distilled between the tallyman and an anonymous voter, through which a qubit can be transferred by means of quantum teleportation. To distill a Bell pair, all but the tallyman and the receiving voter measure their qubits in the X basis and broadcast the result (the receiver broadcasts a dummy bit to stay anonymous). As before, voters periodically run a verification protocol to ensure that the GHZ state is of high fidelity, which ensures anonymity.

One GHZ state enables only a single voter to receive one qubit anonymously. The anonymous queuing of the voters (as described above) allows the voters to know in which position (comprising O(N² log n) Bell states) they are to receive a ballot state and to avoid collisions.

Resource Requirement

As detailed above, all subroutines of the voting protocol can be realized using shared Bell pairs between pairs of voters and the tallyman in a ring structure. The total resource consumption of one round (out of O(N) rounds) of the voting protocol is O(N³ log N) qubits of communication.

Importantly, the size of the local qubit memories of the voters and the tallyman only scales as O(log N) assuming a sequential operation of the voting scheme where Bell pairs are distributed at the start of each subroutine (e.g., ballot distribution, anonymous queuing) instead of in advance. In this way, the size of the memories will be determined by the ballot state and the anonymous queuing algorithm, which both require O(log N) memory qubits.

The precise statements of the algorithms and technical material completing the proofs are relegated to the Supplemental Material.

Implementation

The execution of voting scheme requires an underlying quantum network capable of distributing high-fidelity Bell pairs between adjacent voters in a ring structure. In summary, the scheme consists of the steps:

-   First, anonymous queuing is run to establish the order of ballot     distribution and vote casting. The tallyman repeatedly distributes     O(log N) Bell pairs to the voters until the queuing is finished. -   After the queuing, the tallyman again distributes O(log N) Bell     pairs for anonymous state teleportation. Once an anonymous channel     of O(log N) Bell pairs between the tallyman and a voter has been     established, the tallyman creates a ballot state and teleports it to     the voter. -   Having received the ballot state, the voter measures in a random     basis to calculate a (classical) bit used for encrypting votes. -   Steps b and c are repeated until all voters have their vote bits.     The tallyman now repeatedly distributes O(log N) Bell pairs to allow     the voters to anonymously broadcast their encrypted votes one-by-one     following the order dictated by the queue. Finally, the tallyman     classically broadcasts the bit string x used for decryption.

Note that the number of Bell pairs that a voter needs to simultaneously store and operate on scales as O(log N) due to the efficient encoding of the quantum ballot. Only modestly-sized local quantum processors are thus required even for a large number of voters.

Entangled States

The distribution of high-fidelity Bell pairs is a key functionality of quantum networks. In this application of voting, they are combined into GHZ states. Implementation with nodes based on atomic qubits allows for generation of entanglement that is deterministic, as has been experimentally demonstrated. Then, the success probability does not decay with the number of voters. Furthermore, the number of necessary Bell pairs to obtain a set target GHZ fidelity was found to have an approximately linear scaling with N, for an optimized protocol. This result matches the naive expectation of O(N) loss in fidelity going from N Bell pairs to one GHZ state. The supplement includes an example using a purification protocol. The impact of noisy operations generally is to limit the maximum achievable fidelity.

The most demanding operations that have to be performed are the creation and measurements of the ballot states. These operations can be implemented using single quantum emitters strongly coupled to photonic resonators, which function as efficient spin-photon interfaces (See FIG. 3 ).

Ballot Creation

The key idea to simplify ballot creation involves mapping between unary and binary encodings (see FIG. 3(a)). The ballot state is first encoded in unary using a qubit time-bin encoding where, ideally, a single photon is distributed equally in n time bins. Such a state can either be created using a Raman-type single-emitter scheme or approximated using weak coherent pulses. The bit string x is encoded by applying a phase of π to photons in select time bins, e.g., by passing them through a phase shifter.

The photonic qubit is subsequently compressed into log n qubits using spin-dependent reflection from a single-sided cavity. A resonant photon will be reflected with (without) a π phase shift if the emitter qubit is in a state that is uncoupled (coupled) to an excited state by the cavity field, which realizes a controlled-phase gate between the qubit and photon. Reflecting the photon off a logarithmic number of such emitter-cavity systems, routing time bins to cavities via the binary representation of the time bin number, will entangle the spin registers with the photonic qubit. Subsequently erasing the time-bin information with an interferometric (X -basis) measurement will teleport the ballot state to the registers up to a phase correction determined by the measurement outcome. The operation is heralded on photon detection, which mitigates the detrimental effects of loss in the system to significantly boost the fidelity. Alternatively, the erasing of the time-bin information can be achieved with atomic detection.

The coherence time of the emitter qubits will limit the size of the ballot state that can be created using the unary to binary encoding outlined above. In particular, the coherence time should be long compared to the duration of the single photon qubit pulse. Furthermore, the complexity of the final interferometric measurement also increases with the size of the qubit state since more time bins need to be interfered. The length of the qubit pulse will be nΔt, where n is the length of the bit string x and Δt is the duration of one time-bin. The latter will be determined by the photon emission time of the emitters and the optical switching rate for routing the time bins to the cavities. For diamond defect centers, Purcell-enhanced photon emission times of about 100 would be compatible with time bins on the order of 1 ns, requiring GHz-rate optical switching. For coherence times on the order of 10 ms, this would give a limit of n ≲ 10⁷ compatible with thousands of voters. Note that the size of the required quantum memory would only be around 24 qubits.

Once the ballot state has been encoded in the emitter-cavity registers, it is transferred to a voter via quantum teleportation using the anonymously distributed Bell pairs. For emitters based on color centers in diamond, the Bell pair qubit may be stored in a nearby nuclear spin. A Bell measurement is performed using the direct electronic-nuclear spin coupling. The correction bit strings necessary for teleportation can be broadcast to the voter since they do not contain any information about x.

Ballot Measurement

Voters may sample log n random matchings by measuring one qubit of the ballot state in the X basis and the rest in the Z basis. The other matchings can be obtained by permuting the basis states. The X, CNOT, and Toffoli gates are universal in this sense, and the circuit size is bounded by O(n log n). In practice, sampling over all matchings may not be necessary, so smaller circuits may suffice, but then the tallyman has more influence on which edge is obtained.

Such operations can be performed with the same type of spin-cavity register as described above. To realize a CNOT gate, Bell states are first established between the spin-cavity systems using spin-photon controlled gates, similar to the ballot state creation except with a photonic time-bin qubit instead of (FIG. 3(b)). Since the ballot state has been transferred to nuclear memory qubits, the probabilistic generation of the Bell states between electronic qubits does not influence the ballot state and can be repeated until successful. Then, applying CNOT gates between the nuclear and electronic spins, measuring the electronic spins, and doing feedback on the nuclear spins results in a teleported CNOT between the nuclear spins. Spin rotations on the nuclear spins realize single-qubit gates.

Referring to FIG. 3 , implementation of the hidden matching communication problem is illustrated. In FIG. 3A, to create the ballot state, the tallyman first generates a single photon in a superposition of time bins. A time-dependent phase is applied to encode the tallyman’s randomness. Teleporting to quantum memories, via cavity-assisted photonic gates followed by interferometric measurement, compresses the photonic qudit into a binary qubit code. In FIG. 3B, Bell pairs are created by reflecting a time-bin photonic qubit off two cavities, followed by measurement. This entanglement enables teleported CNOT gates, which permute basis states to sample different matchings.

Noise-Robustness

The realistic imperfect fidelity of the Bell states underlying the voting scheme reduces anonymity, but is testable so the amount of loss is known. Furthermore, the unforgeability result of the quantum ballots remains unchanged for noisy channels. Errors on the ballot state are suppressed over the rounds of the election. Any final error is detected by the voters at the end of the protocol since they verify whether their vote was counted correctly. While the vote-verification of a group of voters may fail, an election can still be carried out given that this group is small enough compared to the margin of the election.

Operations on the GHZ state should be deterministic and maintain its fidelity, to ensure favorable scaling of the scheme with number of voters. Running the election in parallel by splitting voters in communities of size O(log N), each having separate tallymen, allows for an error rate that diminishes polynomially in N and, therefore, requires only poly(N) rounds of repetition (on average) across all communities to have an effectively error-free election. Once a tally is conducted in a community, the tallymen communicate O(log N) bits to share the margin in their local election. Each tallyman can compute the outcome of the full election locally with this information. This tree structure, combined with network topologies other than a ring, may also help remove adversarial nodes that output denial-of-service (DoS) attacks.

The smaller size of sub-elections also eases the ideal operation of all voters having to participate online at the same time. In addition, voters can in principle submit their votes within some time window, and then the scheme is programmed to run at the end. Any voter that does not participate will by default submit a null vote and not object. Since the margins between choices are known, the decision whether to accept the election can be made based upon the prevalence of null votes.

Example

To demonstrate the influence of imperfections on the scheme, a simple example with N = 3 voters, using current realistic parameters can be analyzed. Assume voters share Bell pairs with fidelity F_(Bell.) The fidelity of the resulting GHZ state can be approximated as F_(Bell) ^(N). Under a simple, worst-case depolarizing noise model, assume quantum operations and measurements either work perfectly or completely depolarize the state with probability p. Then, the fidelity of the GHZ state is approximately F_(GHZ) = F_(BellN) (1 - p)^(f(N)), where f(N) is the total number of noisy operations. This fidelity contributes to the anonymity parameter as

$\sqrt{1 - F_{\text{GHZ}^{2}}}.$

For anonymously casting a vote, where f(N) = N + 1 = 4,p = 0.01, F_(Bell) = 0.9, the resulting anonymity leak is γ ≈ 0.71, which is significant compared to ½. Even though the error model is stringent, errors rapidly lead to leaks in anonymity. Nonetheless, given imperfect Bell pairs, the number needed to achieve a target γ is polynomial in N.

Experimental errors do not diminish the unforgeability of the quantum ballots. However, errors may lead voters to find the wrong parity p ⊕ 1 with some probability. The influence of this bit flip is suppressed via the O(N) rounds of the protocol by a factor of √N, similar to adversarial votes. For example, consider that each gate in the ballot measurement completely depolarizes the state with probability p. Then, the averaged bit is flipped with probability

${{\frac{1}{2}\left\lbrack {1 - \left( {1 - p} \right)^{N^{2}\log\mspace{6mu} N}} \right\rbrack}/\sqrt{N}}.$

If the vote is flipped at the end of the election, the voter will protest in the verification stage. For N = 3, p = 0.01, the probability evaluates to 0.027. See the supplement for a more detailed analysis of the bit-flip channel. Thus, errors cause the protocol to abort more often, but the correctness, accountability, and verifiability properties are unaffected.

Security Analysis Threat Model

It can be assumed that the voters are partitioned into two sets: honest and dishonest. In the threat model, it can be assumed that the set of honest voters will follow the protocol. The same voting protocol is run by multiple tallymen, each having independent randomness, a majority of whom are assumed to be honest. No further assumptions are made, and the dishonest tallymen can collude with the set of malicious voters. Additionally, no limits are placed on the computational power of the malicious voters.

This specification provides definitions for the security properties of a voting protocol, accounting for information-theoretic security. Compared to prior work in the setting of computationally bounded adversaries, the properties presented account for the more general setting of information-theoretic security and therefore provide a stronger security guarantee. The protocol satisfies these properties; details of the proofs are in the supplement. The protocol does not leak any information as a function of the number of voters, in contrast to where the distinguishing probability is allowed to be ½ + negl(N) --- a weaker requirement where a negligible (inverse superpolynomial) amount of information can be learned.

Formally defining the desirable properties of a voting protocol introduced informally in the beginning of this article.

Definition 1(Correctness). A voting protocol Π_(vote) is said to satisfy the correctness property if ∀_(∈) ∈ (0,1), given a set of honest voters

{V_(i)}_(i = 1)^(N)

with votes

{v_(i)}_(i = 1)^(N),

Pr[∏_(vote)({v_(i)}_(i = 1)^(N)) = MAJ_(N)({v_(i)}_(i = 1)^(N))] ≥ 1−∈

Equivalently, Definition 1 asserts that the protocol outputs the correct answer in the absence of adversarial voters with probability close to unity. Theorem 1 demonstrates that voting protocol satisfies this property.

Definition 2 (Accountability). A voting protocol Π_(vote) is said to satisfy the accountability property if ∀δ > 0,

Pr[honest votes are counted] = 1

and,

Pr[malicious votes are counted] ≤ δ

Definition 2 asserts that the voting protocol always counts votes output by honest voters but does not count, with high probability, votes output by any voter that is not honest. accountability demonstrates that the voting protocol satisfies this property.

Definition 3 (Verifiability). A voting protocol Π_(vote) is said to satisfy the verifiability property if every voter V_(i), i ∈ [N] can check that their vote v_(i) is tallied and any auditor can verify the outcome of the election by looking at the transcript of Π_(vote.)

Definition 3 asserts that the protocol is transparent in that it allows voters to check the tallying process. Theorem 3 demonstrates that the voting protocol satisfies this property.

Definition 4 (Anonymity). A voting protocol Π_(vote) satisfies the anonymity property with parameter γ ∈ (0,1) if the following holds: Given an honest set of voters

B ⊂ {V_(i)}_(i = 1)^(N)

and a malicious set of voters

A={V_(i)}_(i = 1)^(N)∖ B

along with their choice of permutation π: B → B, such that |A| ≤ N, ∀ strategies S used by A

$\begin{matrix} {\underset{b\overset{\text{R}}{\leftarrow}{\{{0,1}\}}}{\text{Pr}}\left\lbrack {S\left( \prod_{\text{vote}} \right) = b} \right\rbrack \leq \frac{1}{2} + \text{γ}} & \text{­­­Equation 9} \end{matrix}$

where b is a bit that is chosen uniformly at random, such that Π_(vote) runs for the configuration of votes chosen by A for b = 0 and the permuted version for b = 1.

Definition 4 asserts that malicious voters cannot associate a voter’s identity to the vote cast by them. More precisely, anonymity is maintained when malicious voters cannot distinguish between any two voting configurations output by honest voters on observing the announcement of the honest voters regardless of the strategy that they use. Theorem 4 demonstrates that the voting protocol satisfies this property.

The following explanation describes how the voting protocol introduced in this article satisfies the requirements of an ideal voting scheme formally introduced above. First, in the presence of only honest voters, the protocol computes the correct outcome of the voting function.

Theorem 1 (Correctness). The voting protocol described in this article satisfies Definition 1.

Proof Sketch. By construction, assuming that the ballots do not have overlapping edges, the voting protocol outputs the majority winner of the election. The probability that all voters sample the parity of independent bits can be shown to be

$\begin{matrix} {1 - O\left( \frac{N^{2}}{n} \right)} & \text{­­­Equation 10} \end{matrix}$

from simple combinatorial considerations. To avoid collisions between voters, n = O(N²), where n is the number of random bits generated by the tallyman, which are encoded in log n qubits.

The second requirement says that no voter can cast more than one vote. Recall that votes are computed as v = p ⊗ a, where a ballot ((i,j), p) is acquired by solving the communication problem and the agreement a ∈ {0,1} is determined by the desired vote. It is proved that no voter can output more than one vote that aligns with their intended candidate deterministically, and that extra votes do not bias the election. Casting more than one vote results in all but the first vote being distributed in an unbiased binomial distribution. The influence of the other votes is suppressed by repeating the protocol.

Lemma 1. Given N copies of the ballot state |Ψ_(x)〉, a string of N′ ≥ N votes may be outputted with probability

$\begin{matrix} {\text{Pr}\left\lbrack {\left( {N^{\prime} - N} \right)\text{votes}} \right\rbrack \leq \frac{1}{2^{N^{\prime} - N}}} & \text{­­­Equation 11} \end{matrix}$

Proof Sketch. Votes are only counted if they do not have intersecting vertices. It can therefore be considered that the task of outputting the overall parity of more than 2N bits given access to N ballot states, which bounds the success probability of outputting more than N votes by reduction. The success probability of any measurement strategy can be bounded correctly to distinguish between states encoding different parities of the random bits. In particular, it is shown that all extra votes are outputted with Pr[v_(i) = 0] = Pr[v_(i) = 1] = ½, i.e., with zero bias

With an appropriate number of repetitions, using the lemma above, the protocol provides a strong degree of accountability.

Theorem 1 (Accountability). The voting protocol described in this article, on repeating

$r = O\left( {N,\frac{1}{\text{δ}}} \right)$

times with averaging of outputs, satisfies Definition 2.

Proof Sketch. The adversary can technically cast any number of votes. However, outputting extra votes will eventually lead to edge collisions, causing all but the first of their votes to be dropped. As a result, malicious voters can output no more than O(N) vote attempts in a round of the protocol. Repeating Π_(vote) using fresh randomness over O(N) rounds and averaging the outcomes suppresses the noise introduced by the extra votes such that they cancel in the computation of the margin. The first vote, conversely, is biased and contributes to the tally.

Therefore, a ballot state enables a vote to contribute to the election’s tally. Without ballot states, an adversary could remotely take the positions of absentee voters who do not participate in the election. Other advantages include less reliance on physical security and on a certain number of voters being present, since the ballot states can be made with a larger parameter than that number. In addition, the protocol does not have to abort due to double-voting, and thus is more robust.

Extending the notion of accountability, the result of the election should be verifiable by both the voters and any external auditor.

Theorem 3 (Verifiability). The voting protocol described in this article satisfies Definition 3.

Proof Sketch. After running Π_(vote), a transcript containing the edges (i_(l),j_(l)) along with the agreement bit a_(l) of every voter is produced. Since x is revealed after every run, a voter can verify that the vote they cast was correctly counted by checking that (x_(il) ⊕x_(jl)) ⊕a_(l) = v_(l). An external verifier simply runs the computation in Theorem 2 to obtain the margin, by which the election is decided.

Another critical notion is anonymity: no subset of voters can conspire to identify the votes of the remaining set of voters. Perfect anonymity amounts to only being able to randomly guess the identity of a voter; i.e., the success probability of linking a vote to a voter is 1/N. In practice, however, anonymity is reduced by a parameter y, due to the deviation from perfect fidelity of the entangled states used in the underlying protocols for distributing the ballot states and the collection of votes. This notion of information-theoretic security allows for noisy quantum states.

Theorem 4 (Anonymity). The voting protocol described in this article satisfies Definition 4 with any parameter γ > 0.

Proof Sketch. The security of the anonymous broadcast in the protocol relies on the standard reduction of quantum key distribution to the error-corrected case. The mutual information between eavesdroppers and the broadcasted messages is suppressed. The agreement bit itself is masked with the randomness of the uncompromised key. The underlying ballot state can be anonymously distributed to the voters up to a certain tolerance of fidelity given by γ. The total loss of information by broadcast and transfer can then be bounded by a union bound.

The voting protocol therefore satisfies all the desirable cryptographic properties outlined in Section I and has efficient consumption of communication resources, as summarized in Theorem 5.

Theorem 5 (Main Theorem). Given ∈, δ,γ > 0, voters

{V_(i)}_(i = 1)^(N)

with votes

{v_(i)}_(i = 1)^(N),

and the majority voting function MAJ_(N): {0,1}^(N) → {0,1}, where ∈ is the tolerance to tag collisions, δ is the tolerance to failure during repetition, and γ is the deviation from perfect anonymity, ∃n = O(N², 1/∈) such that,

$\underset{x\overset{\text{R}}{\leftarrow}{\{{0,1}\}}^{n}}{\text{Pr}}\left\lbrack {\prod_{vote}^{r}\left( {x,\left\{ V_{i} \right\}_{i = 1}^{N}} \right) = \text{MAJ}_{N}\left( \left\{ v_{i} \right\}_{i = 1}^{N} \right)} \right\rbrack \geq 1\mspace{6mu} - \in - \mspace{6mu}\text{δ}$

where

$r = O\left( {N,\frac{1}{\text{δ}}} \right)$

is the number of rounds of Π_(vote). The scheme satisfies the security properties specified in Definitions 1-4 with γ-anonymity using no more than O(N³ log N) qubits of communication in Π_(vote).

Proof Sketch. The main theorem follows from the proofs of the component theorems and the analysis of the algorithms, included in the Supplemental Material

Noisy votes. Malicious voters are free to attempt to output as many extra votes as possible. However, there is a limit before losing anonymity. More specifically, in order for the anonymous broadcast to go through, the voters must use the shared Bell pairs. As described earlier, the influence of extra vote attempts is suppressed by repeating the protocol a modest number of times. While a malicious voter can input noise into the broadcast channel, this attack can be detected by the honest voter at the end of the protocol. The protocol does not guarantee counting any vote that a malicious voter may cast. In particular, any voter that attempts to deterministically output more than one vote may have none of their votes counted in the election.

DoS attacks. Using the fact that a voter does not want to compromise their identity in conjunction with Theorem 1, certain families of denial-of-service (DoS) attacks can be ruled out during any phase other than one that uses the anonymous broadcast. Any attempt will either compromise their identity, lead to extra votes that are suppressed during repetitions as shown in Theorem 2, or result in their votes being not counted. As mentioned prior, while noise injected by malicious voters during anonymous broadcast can be detected, the anonymity in the protocol disallows identifying them, leading to a vulnerability to a noise-based DoS attack.

When running Π_(vote), any malicious voter V_(i) ∈ A, attempting to guess an edge e = (i′,j′) that intersects with one cast by an honest voter V_(j), will succeed with vanishing probability (Theorem 1). On the other hand, if V_(i) observes the broadcasted edge in the tag of an honest voter V_(j), then V_(i) can only cast their tag afterwards (as in the order instantiated by the anonymous queue), in which case any vote with overlapping edge is discarded during the execution of Π_(vote). If V_(i) has output edges {e′} that do not intersect with those of any other voters and are not obtained from the ballot state, then these votes will be suppressed during repetition (Theorem 2). Lastly, note that if some subset of malicious voters attempts to choose an intersecting set of edges on purpose to compute parities of other edges deterministically, then those extra edges broadcasted in a tag with a vote will be dropped, since they intersect with at least one of the prior edges. In such a case, only the first vote will be counted, and subsequent votes will be dropped, which removes incentive for the malicious adversaries to try this attack. These guarantees show that any DoS attack which relies on the protocol aborting due to intersecting edges can be avoided.

In this specification, an efficient quantum voting protocol is presented that satisfies the desirable security criteria with information-theoretic security (Theorem 5). It is a distributed ballot scheme where the solution to a communication complexity problem authenticates voters and encodes their votes. It is proven that the quantum encoding prevents forgery of votes, in that only one vote can be recovered from each state. The election outcome can then be computed in a secure multiparty setting using anonymous broadcast. It is provided that a generalized protocol that enables secure sum, which can be used for unconditionally secure collision detection and queuing of voters. An election is run with O(N³ log N) qubits of communication, repeated O(N) times to achieve security. Importantly, the poly(N) scaling is efficient in the number of voters N, in contrast to previous schemes. Furthermore, the protocol requires local memories of size O(log N) qubits for each voter, ensuring that only modestly-sized quantum processors are necessary even for a large number of voters. The reduction in resources, for both communication and computation, removes a fundamental obstacle toward practicality. While beyond the reach of current quantum networks, the amount of quantum processing is modest and many of the key elements of the scheme have already been demonstrated in experiments. Consequently, this work advances the state-of-the-art in cryptography and provides a practical application for quantum networks. The quantum scheme enables capabilities beyond classical voting protocols and may provide hardware-level security.

The O(N) overhead introduced by averaging to suppress adversarial votes can potentially be avoided in a tag-based scheme. The tallyman T sends s = O(log N) copies of the ballot to every voter, and unless the voter can output s parities of the string x at uniformly random locations, the vote is rejected. Then, the probability that an adversary can output votes correctly is bounded by 1/N^(c), for some c ≥ 1. Communication resources decrease to Õ(N³) qubits at the expense of a marginal increase in randomness to Õ(N²) bits, suppressing logarithmic factors. However, since a voter makes multiple announcements to cast a single vote, the anonymity of such a protocol becomes challenging to prove in the presence of adaptive adversaries.

The voting protocol does not satisfy a property called Receipt-Freeness, which asserts that no voter should be able to prove that they voted in a certain way. Malicious adversaries can use the underlying algebraic structure of the secret key in the anonymous broadcast to learn information about how the rest of the voters voted. It can be assumed that “vote selling” may still be prevented, and that it is a modest criterion given the voting protocol’s other highly desirable guarantees.

The following description includes algorithms in the quantum voting protocol and cryptographic proofs of the protocol’s cryptographic properties. The following description elaborates on the algorithms used in the voting protocol. It includes the overarching voting protocol for calculating the election outcome (Algorithm S.1) and the subroutines of anonymous state transfer (Algorithm S.2) and distributed secure sum (Algorithm S.3).the description further includes the higher-level protocols for anonymously queuing the voters (Algorithm S.4) and conducting one round of voting (Algorithm S.5). The description further includes aspects of how the voting protocol runs, bounding the probability of voters sampling intersecting pairs of bits from the quantum ballot state (Lemma S.2) and the number of rounds required in the queuing algorithm (Lemma S.3). Finally, it includes noise in the distribution of the quantum ballot state (Lemma S.4) and bound the probability of a successful run under independent bit flip errors.

Restating the Security Definitions

Definition 1(Correctness). A voting protocol Π_(vote) is said to satisfy the correctness property if ∀_(∈) ∈ (0,1), given a set of honest voters

{V_(i)}_(i = 1)^(N)

with votes

{v_(i)}_(i = 1)^(N)

Pr[∏_(vote)({v_(i)}_(i = 1)^(N)) = MAJ_(N)({v_(i)}_(i = 1)^(N))] ≥ 1 −∈

Definition 2 (Accountability). A voting protocol Π_(vote) is said to satisfy the accountability property if ∀δ > 0

Pr[honest votes are counted] = 1

and,

Pr[malicious votes are counted] ≤ δ

Definition 3 (Verifiability). A voting protocol Π_(vote) is said to satisfy the verifiability property if every voter V_(i), i ∈ [N] can check that their vote v_(i) is tallied and any auditor can verify the outcome of the election by looking at the transcript of Π_(vote).

Definition 4 (Anonymity). A voting protocol Π_(vote) satisfies the anonymity property with parameter γ ∈ (0,1) if the following holds: Given an honest set of voters

B ⊂ {V_(i)}_(i = 1)^(N)

and a malicious set of voters

A={V_(i)}_(i = 1)^(N)∖ B

along with their choice of permutation π: B → B, such that |A| ≤ N, ∀ strategies S used by A

$\begin{matrix} {\underset{b\overset{\text{R}}{\leftarrow}{\{{0,1}\}}}{\text{Pr}}\left\lbrack {S\left( \prod_{\text{vote}} \right) = b} \right\rbrack \leq \frac{1}{2} + \text{γ}} & \text{­­­Equation S.1} \end{matrix}$

where b is a bit that is chosen uniformly at random, such that Π_(vote) runs for the configuration of votes chosen by A for b = 0 and the permuted version for b = 1.

Algorithms

Decision Function. The calculation of the election winner in majority vote relies on averaging over O(N) rounds to suppress adversarial votes. The margin of the election is also computed. In each round of the election, voters can anonymously complain if their vote was incorrectly counted. If the number of such complaints is less than half the margin, then the election outcome is unchanged and valid. This process is made explicit in Algorithm S.1 that is presented in FIG. 4 .

Anonymous State Transfer. FIG. 5 presents the algorithm S.2 that is used for anonymous state transfer. A successful run of the protocol establishes one Bell pair between a voter V_(l) and and tallyman T with e-anonymity (Lemma S.1). Testing of the entanglement limits the success probability to O(1/N). Since a GHZ state can be shared with N Bell pairs, anonymous teleportation of one qubit consumes O(N²) entangled pairs.

Lemma S.1. ∀_(∈) > 0, given that the distributed GHZ states have fidelity

$F \geq \sqrt{1 - \in^{2}},$

even in the presence of malicious adversaries B,

$\Pr\left\lbrack {B\mspace{6mu}\text{guesses}\mspace{6mu} V_{l}} \right\rbrack \leq \frac{1}{N} + \varepsilon$

where a voter V_(l) and tallyman T establish a Bell pair.

Secure Sum. FIG. 6 presents algorithm S.3 that computes the distributed secure sum. It relies on the correlations in GHZ states to “mask” the inputs, and outputs their sum (modulo N). The following description provides the calculations that show the correctness of the protocol. The one-bit anonymous broadcast protocol to qubits is generalized. The initial state is

$\begin{matrix} {\left\lbrack \text{GHZ}_{d} \right) = \frac{1}{\sqrt{d}}\left\lbrack {\left| 0 \right\rangle^{\otimes N} + \ldots + \left| {d - 1} \right\rangle^{\otimes N}} \right\rbrack} & \text{­­­Equation S.1} \end{matrix}$

$\begin{matrix} {= \frac{1}{\sqrt{d}}{\sum\limits_{j = 0}^{d - 1}\left| j \right\rangle}^{\otimes N} \cdot} & \text{­­­Equation S.3} \end{matrix}$

A voter applies Z^(a), where a ∈ {0, ..., d - 1} is the announcement:

$\begin{matrix} {Z^{a}\left\lbrack \text{GHZ}_{d} \right) = \frac{1}{\sqrt{d}}{\sum\limits_{j = 0}^{d - 1}e^{{2\pi ija}/d}}\left| j \right\rangle^{\otimes N} \cdot} & \text{­­­Equation S.4} \end{matrix}$

Note that the action is the same no matter which voters apply Z; only the number of applications a matters. Everyone applies U_(QFT), which maps

$\left. \left| j \right\rangle\rightarrow\frac{1}{\sqrt{d}}\mspace{6mu}\mspace{6mu}\,{\sum_{\{{k = 0}\}}^{\{{d - 1}\}}e^{\{{2\pi i\mspace{6mu} j\mspace{6mu}{k/d}}\}}}\left| k \right\rangle: \right.$

$\begin{matrix} {U_{\text{QFT}}^{\otimes N}Z^{a}\left| \text{GHZ}_{d} \right\rangle = \frac{1}{\sqrt{d}}{\sum\limits_{j = 0}^{d - 1}e^{{2\pi ija}/d}}U_{\text{QFT}}^{\otimes N}\left| j \right\rangle^{\otimes N}} & \text{­­­Equation S.5} \end{matrix}$

$\begin{matrix} {= \frac{1}{\sqrt{d}}{\sum\limits_{j = 0}^{d - 1}e^{2\pi ij{a/d}}}\left( U_{\text{QFT}} \right)\left| j \right\rangle^{\otimes N}} & \text{­­­Equation S.6} \end{matrix}$

$\begin{matrix} {= \frac{1}{\sqrt{d}}{\sum\limits_{j = 0}^{d - 1}e^{2\pi{{ija}/d}}}\underset{l = 1}{\overset{N}{\otimes}}\left( {\frac{1}{\sqrt{d}}{\sum\limits_{k_{l} = 0}^{d - 1}e^{{2\pi ijk_{l}}/d}}\left| k_{l} \right\rangle} \right)} & \text{­­­Equation S.7} \end{matrix}$

$\begin{matrix} {= \frac{1}{d^{{({N + 1})}/2}}{\sum\limits_{j = 0}^{d - 1}e^{2\pi ij{a/d}}}{\sum\limits_{k_{l} = 0\mspace{6mu}\forall l}^{d - 1}{\prod\limits_{l = 1}^{N}e^{{2\pi ijk_{l}}/d}}}\underset{l = 1}{\overset{N}{\otimes}}\left| k_{l} \right\rangle} & \text{­­­Equation S.8} \end{matrix}$

$\begin{matrix} {= \frac{1}{d^{{({N + 1})}/2}}{\sum\limits_{j = 0}^{d - 1}e^{{2\pi ija}/d}}{\sum\limits_{k_{l} = 0\mspace{6mu}\forall l}^{d - 1}e^{{2\pi ij{\sum_{l = 1}^{N}k_{l}}}/d}}\underset{l = 1}{\overset{N}{\otimes}}\left| k_{l} \right\rangle} & \text{­­­Equation S.9} \end{matrix}$

$\begin{matrix} {= \frac{1}{d^{{({N + 1})}/2}}{\sum\limits_{j,k_{l} = 0\mspace{6mu}\forall l}^{d - 1}e^{{({{2\pi ij}/d})}{({a + {\sum_{l = 1}^{N}k_{j}}})}}}\underset{l = 1}{\overset{N}{\otimes}}\left| k_{l} \right\rangle} & \text{­­­Equation S.10} \end{matrix}$

$\begin{matrix} {= \frac{1}{d^{{({N - 1})}/2}}{\sum\limits_{k_{l} = 0\mspace{6mu}\forall l}^{d - 1}{\delta\left( {a = {\sum\limits_{l = 1}^{N}k_{l}}} \right)}}\underset{l = 1}{\overset{N}{\otimes}}\left| k_{l} \right\rangle.} & \text{­­­Equation S.11} \end{matrix}$

Everyone measures this state in the computational basis. For any measurement outcome,

$a = {\sum_{l = 1}^{N}k_{l}}.$

Thus, if everyone announces their measurement outcome k_(l), anyone can sum them together to obtain a.

Anonymous Queuing & Voting. FIG. 7 presents algorithm S.4 that instantiates the anonymous queue that delegates the order in which the voters cast their vote. Every unqueued voter samples randomly to enter the queue with equal probability. If the bit is one, the voter casts a desire to queue themselves in the next position in the queue. This request is granted if the distributed secure sum of the bits cast by all voters is 1. The protocol need only be repeated O(N) times (Lemma S.3) to queue every voter.

FIG. 8 presents algorithm S.5 is the actual protocol used by the voters to cast their votes. First, the tallyman anonymously distributes (Algorithm S.2) the hidden-matching state to every voter. Then, the voters anonymously broadcast their tags, which consist of an agreement bit as well as the indices of the measured edge, in the order instantiated by the anonymous queue (Algorithm S.4). The tallyman then broadcasts the random string and the votes are computed for every voter.

Resource Consumption. One round of the voting protocol has total quantum communication of O(N³ log N) qubits, enumerated below.

-   The distributed secure sum consumes O(N log N) bits of entanglement,     performed O(N) times to construct the queue. An extra overhead of     O(N) rounds is needed to verify the quality of the GHZ states. -   The quantum superposition state compresses the tallyman’s n bits of     randomness in log n qubits. To avoid intersecting edges between     voters, n = O(N²) (Lemma S.2). Copies of the state are communicated     to N voters, consuming a GHZ state per qubit (with an overhead of     O(N) for verifying the entanglement), which may be distributed with     consumption of N Bell pairs. -   The anonymous broadcast protocol requires a ring of maximally     entangled states connecting the voters, consuming O(N) Bell pairs     per broadcasted bit. Test measurements verifying the entanglement     cost O(N) overhead. A single ballot and vote constitute 2 log n + 1     bits.

The number of rounds, used to amplify security by removing the influence of adversarial votes, is O(N) in the scheme, in contrast to comparable protocols that are susceptible to double-voting if the number of rounds is not exponential in the number of voters.

Edge Collision. The following lemma S.2 bounds the number of edges that can share an intersecting vertex between two voters given a ballot state. As a result, for n = O(N²), adversarial voters can guess O(N) ballot configurations before colliding with another voter. More specifically, Lemma S.2 implies that, for any α > 0, if a single voter outputs O(N^(1+α)) votes, the probability of a shared vertex between some pair of voters becomes O(N^(α)) which is much greater than ∈ for sufficiently large N, and causes the protocol to almost certainly fail.

Lemma S.2. Given

$n = 0\left( {N^{2}/ \in} \right),\,\, x\overset{R}{\leftarrow}\left\{ {0,1} \right\}^{n}$

and two voters V, V′ with perfect matchings on n vertices

$M\overset{R}{\leftarrow}M_{\frac{n}{2}},M^{\prime}\overset{R}{\leftarrow}M_{\frac{n}{2}}$

and edges

$e\overset{R}{\leftarrow}M,\, e\prime\overset{R}{\leftarrow}M\prime,$

the probability that they share a vertex is,

$\begin{matrix} {\Pr\left\lbrack {e^{\prime} \cap e \neq \phi\left| {e,e^{\prime}} \right)} \right\rbrack \leq O\left( \frac{N^{2}}{n} \right) \leq \in} & \text{­­­Equation S.12} \end{matrix}$

Proof: Since each edge e is drawn by a voter i.i.d.,

$\begin{matrix} {\Pr\left\lbrack e\leftarrow V,e^{\prime}\leftarrow V^{\prime} \right\rbrack = \Pr\left\lbrack e\leftarrow V \right\rbrack\Pr\left\lbrack e^{\prime}\leftarrow V\prime \right\rbrack} & \text{­­­Equation S.13} \end{matrix}$

The probability that two voters sample an edge with intersecting vertices is equivalent to the number of edges with a shared vertex given two matchings M, M′ that are sampled independently normalized by the number of matchings. The event of a shared vertex between two voters V, V′ that have sampled edges e, e′ is denoted as ε. To bound it for every pair of voters, first, a union bound is applied over the number of distinct voter pairs to the event ε,

$\begin{matrix} {\Pr\left\lbrack {\underset{V \neq V^{\prime}}{\cup}\varepsilon} \right\rbrack \leq {\sum\limits_{V \neq V^{\prime}}\Pr}|\varepsilon|} & \text{­­­Equation S.14} \end{matrix}$

$\begin{matrix} {= {\sum\limits_{V \neq V^{\prime}}\Pr}\left\lbrack {e,e^{\prime},\varepsilon} \right\rbrack} & \text{­­­Equation S.15} \end{matrix}$

$\begin{matrix} {= {\sum\limits_{V \neq V^{\prime}}{\underset{e^{\underset{\leftarrow}{R}}M}{\text{Pr}}\lbrack e\rbrack\text{Pr}}}\left\lbrack {e^{\prime},\varepsilon|e)} \right\rbrack} & \text{­­­Equation S.16} \end{matrix}$

This is followed by use of conditional probabilities to split up the joint distribution Pr[e, e′, E]. It can be noted that,

$\begin{matrix} {\Pr\limits_{e\overset{R}{\leftarrow}M}\lbrack e\rbrack = \Pr\limits_{e,M}\left| {e,M} \right| = {\sum\limits_{M \in M_{\mspace{6mu}\frac{n}{2}}}{\Pr\left| {e|M|\Pr} \right)}}|M|.} & \text{­­­Equation S.17} \end{matrix}$

Using the above, it can be expand as,

$\begin{matrix} {\Pr\left\lbrack {\underset{V \neq V^{\prime}}{\cup}\varepsilon} \right\rbrack \leq {\sum\limits_{V \neq V^{\prime}}{{\sum\limits_{M \in M\mspace{6mu}_{\frac{n}{2}}}\Pr\limits_{e\overset{R}{\leftarrow}M}}\left| {e|M|} \right)}}\Pr\limits_{M\overset{R}{\leftarrow}M_{\mspace{6mu}\frac{n}{2}}}\lbrack M\rbrack\Pr\left\lbrack {e^{\prime},\varepsilon|e)} \right\rbrack} & \text{­­­Equation S.18} \end{matrix}$

$\begin{matrix} \begin{array}{l} {= {\sum\limits_{V \neq V^{\prime}}{\sum\limits_{M \in M_{\mspace{6mu}\frac{n}{2}}}\Pr\limits_{e\overset{R}{\leftarrow}M}}}\left\lbrack {e|M)} \right\rbrack\underset{\overset{R}{M\leftarrow M_{\frac{n}{2}}}}{\text{Pr}}\lbrack M\rbrack} \\ {{\sum\limits_{M^{\prime} \in M_{\frac{n}{2}}}\underset{\overset{R}{e^{\prime}\leftarrow M^{\prime}}}{\text{Pr}}}\left\lbrack {e^{\prime},\varepsilon\left| {e,M^{\prime}} \right)} \right\rbrack\underset{\overset{R}{M^{\prime}\leftarrow M_{\frac{n}{2}}}}{\text{Pr}}\left\lbrack M^{\prime} \right\rbrack.} \end{array} & \text{­­­Equation S.19} \end{matrix}$

After applying the union bound over the

$\begin{pmatrix} n \\ 2 \end{pmatrix}$

pairs, marginalizing over the sums of choosing a matching M uniformly at random, and choosing the first edge e uniformly at random from the

$\frac{n}{2}$

edges in a matching M, the probability that the second edge e′ is computed by choosing uniformly at random from another random matching M′ has an intersecting vertex.

$\begin{matrix} {\Pr\left\lbrack {\underset{V \neq V^{\prime}}{\cup}\varepsilon} \right\rbrack \leq \frac{2\begin{pmatrix} N \\ 2 \end{pmatrix}}{n}\Pr\limits_{e\overset{R}{\leftarrow}M^{\prime}}\left| {e^{\prime},\varepsilon} \right|\left( {e,M^{\prime}} \right|} & \text{­­­Equation S.20} \end{matrix}$

$\begin{matrix} {\leq \frac{2\begin{pmatrix} \text{N} \\ 2 \end{pmatrix}}{n}\left( {2n - 3} \right)\Pr\left\lbrack {e^{\prime} \in M^{\prime}} \right\rbrack.} & \text{­­­Equation S.21} \end{matrix}$

In the above equation, note that the number of intersecting edges e′ with some fixed e are 2n-3, and compute the probability of the intersecting edge as the fraction of matchings over n - 2 vertices to those over n vertices (fixing some intersecting edge).

$\begin{matrix} {\Pr\left\lbrack {\underset{V \neq V^{\prime}}{\cup}\varepsilon} \right\rbrack \leq 4\begin{pmatrix} N \\ 2 \end{pmatrix}\frac{n - \frac{3}{2}}{n}\frac{\left| M_{\frac{n - 2}{2}} \right|}{\left| M_{\frac{n}{2}} \right|}} & \text{­­­Equation S.22} \end{matrix}$

$\begin{matrix} {= 4\begin{pmatrix} N \\ 2 \end{pmatrix}\frac{n - \frac{3}{2}}{n}\frac{2\left( {n - 2} \right)1\left( \frac{3}{2} \right)12^{\frac{\text{H}}{2}}}{n1\left( {\frac{n}{2} - 1} \right)12^{\frac{\text{A}}{2}}}} & \text{­­­Equation S.23} \end{matrix}$

$\begin{matrix} {= 8\begin{pmatrix} N \\ 2 \end{pmatrix}\frac{n - \frac{3}{2}}{n}\frac{\frac{n}{2}}{n\left( {n - 1} \right)}} & \text{­­­Equation S.24} \end{matrix}$

$\begin{matrix} {\leq 8\begin{pmatrix} N \\ 2 \end{pmatrix}\frac{1}{n}} & \text{­­­Equation S.25} \end{matrix}$

$\begin{matrix} {= O\left( \frac{N^{2}}{n} \right),} & \text{­­­Equation S.26} \end{matrix}$

whereby explicitly counting the number of matchings in

$M_{\frac{n - 2}{2}}$

and

$M_{\frac{n}{2},}$

and setting n = O(N²/∈) is the choice for the number of random bits that the tallyman uses to draw x.

Queue. The adaptive strategy in the anonymous queuing algorithm requires O(N) rounds, resulting in the consumption of O(N² log N) Bell pairs overall.

Lemma S.3

$\begin{matrix} {\Pr\left\lbrack {QueueterminatesinO(N)rounds} \right\rbrack = 1 - {1/c}} & \text{­­­Equation S.27} \end{matrix}$

for any constant c.

Proof. Let p_(i) be the probability of successfully filling the ith spot in the queue. To succeed, out of the N - i + 1 unqueued voters, one voter attempts to enter the queue with probability 1/(N - i + 1) while the rest choose not to. Then, combinatorially,

$\begin{matrix} {p_{i}\quad = \quad\left( {N - i + 1} \right)\left( \frac{1}{N - i + 1} \right)^{1}\left( {1 - \frac{1}{N - i + 1}} \right)^{{({N - i + 1})} - 1}} & \text{­­­Equation S.28} \end{matrix}$

$\begin{matrix} {= \,\mspace{6mu}\left( {1 - \frac{1}{N - i + 1}} \right)^{N - 1}} & \text{­­­Equation S.29} \end{matrix}$

$\begin{matrix} {\overset{N\rightarrow\infty}{\rightarrow}{1/e}.} & \text{­­­Equation S.30} \end{matrix}$

The total time T = t₁ + . . . + t_(N) is the sum of the times needed to fill the individual spots. Having a geometric distribution, the expected value is E(t_(i)) = 1/p_(i). By linearity,

$\begin{matrix} {\mathbb{E}(T) = \mspace{6mu}{\sum\limits_{i = 1}^{N}{\mathbb{E}\left( t_{j} \right)}}} & \text{­­­Equation S.31} \end{matrix}$

$\begin{matrix} {= {\sum\limits_{i = 1}^{N}{1/p_{i}}}} & \text{­­­Equation S.32} \end{matrix}$

$\begin{matrix} {= {\sum\limits_{i = 1}^{N - 1}{\left( \frac{N - i + 1}{N - i} \right)^{N - 1} + 1}}} & \text{­­­Equation S.33} \end{matrix}$

$\begin{matrix} {\overset{N\rightarrow\infty}{\rightarrow}N \cdot e.} & \text{­­­Equation S.34} \end{matrix}$

Markov’s inequality bounds the probability of a long run time, for any c > 0:

$\begin{matrix} {\text{Pr}\left\lbrack {T\mspace{6mu} \geq \mspace{6mu} ceN} \right\rbrack\mspace{6mu}\mspace{6mu} \leq \mspace{6mu}\mspace{6mu} 1/c} & \text{­­­Equation S. 35} \end{matrix}$

Bit-Flip Errors. The effect of independent bit-flip errors on the ballot state is independent of the amount of random bits n (Lemma S.4). The expected number of repetitions so that the voters can cast valid votes isexp(N) with probability ≥ 1 - exp(-∈′²n). However, note that the expected number of voters with corrupted parities when N ballot states 〉{Ψ_x} are distributed is

$\leq \left( {\frac{1}{2} + \in^{\prime}} \right)n.$

If the margin of victory is greater by some constant amount, then it suffices to have far fewer rounds of repetition since the probability that the same voter has errors in their parity computation also decreases exponentially, and so every round will likely have different voters with errors. By running the election in O(N/ log N) communities of size O(log N) each, only 1/poly(N) probability of single-qubit Pauli X errors (in every community) is incurred. Therefore, with poly(N) repetitions on expectation, an error-free run is conducted.

Lemma S.4. Given N copies of the state |Ψ_(x)〉 transferred under a bit-flip channel X_(p) independently for every qubit and some arbitrary ∈’ > 0, the probability that N votes are cast is

$\begin{matrix} {\underset{p}{\text{Pr}}\left\lbrack {N\mspace{6mu}\text{votes}} \right\rbrack \geq O\left( 2^{- N} \right)} & \text{­­­Equation S.36} \end{matrix}$

provided that x is ∈′-balanced (has roughly equivalent 1 s and 0 s). The error channel is

X_(p): ρ → (1 − p)ρ + p(XρX)

for single-qubit density matrices ρ.

Proof. Choose some arbitrarily small ∈’ > 0. #0(x)and#1(x) are defined as the number of zeroes and ones in a bit string x. Notice that a Chernoff bound implies that

$\begin{matrix} \begin{array}{l} {\# 1(x) \in \left| {\left( {\frac{1}{2} - e\prime} \right)n,\left( {\frac{1}{2} + e\prime} \right)n} \right|,} \\ {\# 0(x) \in \left| {\left( {\frac{1}{2} - e\prime} \right)n,\left( {\frac{1}{2} + e\prime} \right)n} \right|,} \end{array} & \text{­­­Equation S.37} \end{matrix}$

with probability ≥ 1 - exp(-∈′²n), which is the precise characterization of

$x\overset{R}{\leftarrow}\left\{ {0,1} \right\}^{n}$

being ∈′-balanced.

Fix some edge (i,j) that a voter V_(l) chooses (with probability 2/n) and an e′-balanced x. Note that, even under the presence of errors, the probability that the measurement is correct is if |i〉 → 〉{i′} and |j〉 → Ij′〉, such that

$\begin{matrix} {\left( {\left( {x_{i^{\prime}} = x_{i}} \right) \land \left( {x_{j^{\prime}} =} \right)} \right) \vee \left( {\left( {x_{i^{\prime}} = 1 \oplus x{}_{i}} \right) \land \left( {x_{j^{\prime}} = 1 \oplus x_{j}} \right)} \right) = 1} & \text{­­­Equation S. 38} \end{matrix}$

Note that the probability of the first event in Equation S.38 is simply:

$\begin{matrix} \begin{array}{l} {\left( {\sum\limits_{i = 0}^{\log n}{\text{Pr}\left\lbrack {x_{p} = x_{i}\left| \text{Pr} \right|d_{H}\left( {x_{p},x_{i}} \right) - t} \right\rbrack}} \right)\left( {\sum\limits_{i = 0}^{\log n}{\text{Pr}\left\lbrack {x_{j^{\prime}} = x_{j}} \right\rbrack\text{Pr}\left\lbrack {d_{H}\left( {x_{j^{\prime}},x_{j}} \right) = t} \right\rbrack}} \right)} \\ {\geq 4\left( {\frac{1}{2} - \varepsilon^{\prime}} \right)^{2}\left( {\frac{1}{2} - \varepsilon^{\prime} - \frac{1}{n}} \right)^{2},} \end{array} & \text{­­­Equation S.39} \end{matrix}$

where d_(H)(x, y) denotes the Hamming distance between strings x and y. The fact that the X_(p) channel acts on |i〉 and |j〉 independently is used and that x is drawn uniformly at random, due to the regime of the Chernoff bound set in Equation S.37. By symmetry,

$\begin{matrix} \begin{array}{l} {\left( {\sum\limits_{i = 0}^{\log n}{\text{Pr}\left| {x_{p} = 1 \oplus x_{i}} \right|\left\lbrack {d_{H}\left( {x_{p},x_{i}} \right) - 1} \right\rbrack}} \right)\left( {\sum\limits_{t = 0}^{\log n}{\text{Pr}\left\lbrack {x_{j^{\prime}} = 1 \oplus x_{j}} \right\rbrack\text{Pr}\left\lbrack {d_{H}\left( {x_{j^{\prime}},x_{j}} \right) = t} \right\rbrack}} \right)} \\ {\geq 4\left( {\frac{1}{2} - e\prime} \right)^{2}\left( {\frac{1}{2} - e\prime - \frac{1}{n}} \right)^{2}.} \end{array} & \text{­­­Equation S.40} \end{matrix}$

The total probability that a single voter V_(l) measures the correct parity of an edge (i,j) chosen uniformly at random from

$M_{\frac{n}{2}}$

given

Equation S.41 is

$\begin{matrix} {\text{Pr}\left\lbrack {p_{ij} = p_{pj^{\prime}}} \right\rbrack \geq 8\left( {\frac{1}{2} - \in^{\prime}} \right)^{2}\left( {\frac{1}{2} - \in^{\prime} - \frac{1}{n}} \right)^{2}.} & \text{­­­Equation S.42} \end{matrix}$

Since there are N independent copies of |Ψ_(x)〉 the probability of valid votes being cast correctly by all voters is

$\begin{matrix} {\Pr\left\lbrack \text{N valid voters} \right\rbrack = \begin{array}{l} {\geq 2^{3N}\left( {\frac{1}{2} - \in^{\prime}} \right)^{2N}\left( {\frac{1}{2} - \in^{\prime} - \frac{1}{n}} \right)^{2N}} \\ {= 2^{- N}\left( {1 - 2c^{\prime}} \right)^{2N}\left( {1 - 2\left( {\in^{\prime} + \frac{1}{n}} \right)} \right)^{2N}} \\ {= 2^{- N}\left( {1 - 4c^{\prime}N + 0(1)} \right)\left( {1 - 4\left( {c^{\prime} + \frac{1}{n}} \right)N + 0(1)} \right)} \\ {= 2^{- N} \cdot O(1),} \end{array}} & \text{­­­Equation S.43} \end{matrix}$

if

$\in^{\prime}\mspace{6mu} = \mspace{6mu}\frac{1}{cN},$

for some arbitrarily large c > 0.

Security Proofs

The following description includes the full security proofs for the voting protocol. First, it is proven that the unforgeability of the quantum ballot, beginning with the result for one copy of the state (Lemma S.5) and afterward in general for multiple copies (Theorem S.1). Then, the influence of adversarial votes is bound when averaging over rounds of the protocol (Theorem S.2). Finally, the anonymity of the voters is provided (Theorem S.3). Later the description further includes a variant of the voting scheme. It enables savings in quantum communication (Theorem S.4) but requires a more involved security analysis of anonymity.

Verifiability is proven directly in the main text. Correctness follows from Lemma S.2. The proof of accountability relies on the unforgeability of the quantum ballot. This result is demonstrated for one copy of the state in Lemma S.5, and then generalize the proof strategy for multiple copies in Theorem S.1. Then, Theorem S.2 shows the suppression of adversarial votes via repetition, completing the proof of accountability. To prove anonymity, it is shown that the protocol does not leak information about the voters, so that guessing a particular identity cannot be done better than random (Theorem S.3).

Unforgeability

Lemma S.5. Given one copy of |Ψ_(x)〉, a computationally unbounded adversary Adv can output more than one parity p of an edge (i,j) with probability

$\begin{matrix} {\text{Pr}\left\lbrack Adv\rightarrow\left( {p,\left( {i,j} \right)} \right) \right\rbrack \leq 1/2.} & \text{­­­Equation S. 44} \end{matrix}$

Proof. The success probability of outputting the parity of a subset t bits is bound and it becomes ½ for t > 2. That is, the adversary cannot forge a vote from one copy of the state better than a coin flip. A similar approach bounds the quantum communication complexity of the problem. Here, the tallyman has x ∈ {0,1}^(n), which is encoded in p(x) = |Ψ_(x)〉〈Ψ_(x)|. The adversary outputs a subset of [n] of size t and the parity of the bits in that subset. Without loss of generality, the adversary’s protocol consists of a measurement Π_(G) to output a subset, followed by a measurement of its parity (Fact S.1). G₊ (or G_) denote the subsets of {0,1}^(n) where that parity is + (or -). The probability of distinguishing between two states ρ₊, ρ_ that occur with respective probabilities p₊, ρ_ is at most, under a positive-operator valued measure (POVM),

$\begin{matrix} {\frac{1}{2} + \frac{1}{2}\left\| {p + \rho + - p - \rho -} \right\|\text{tr,}} & \text{­­­Equation S. 45} \end{matrix}$

where the deviation from ½ is denoted ∈_(bias.) Here, || • ||_(tr) denotes the trace norm. In this case,

$\begin{matrix} {p_{+} = p_{\cdots} = \frac{1}{2^{n}}\left( {\rho,\prod_{G}} \right),} & \text{­­­Equation S.46} \end{matrix}$

$\begin{matrix} {\rho_{+} = \frac{1}{\left( {\rho,\Pi_{G}} \right)}{\sum\limits_{x \in G_{i}}{\sqrt{\Pi_{G}}\rho(x)\sqrt{\Pi_{G,}}}}} & \text{­­­Equation S.47} \end{matrix}$

$\begin{matrix} {\rho_{-} = \frac{1}{\left( {\rho,\Pi_{G}} \right)}{\sum\limits_{x \in G}\sqrt{\Pi_{G}}}\rho(x)\sqrt{\Pi_{G},}} & \text{­­­Equation S. 48} \end{matrix}$

The bias conditioned on projecting onto G is

$\begin{matrix} \left. e_{bias} = G \leq \frac{1}{2} \middle| \middle| \frac{1}{2^{n}} \cdot {\sum\limits_{x \in G_{j}}\sqrt{\prod_{G}}}\frac{p(x)}{(p,\prod_{G})}\sqrt{\prod_{G}} - \frac{1}{2^{n}} \cdot {\sum\limits_{x \in G}\sqrt{\prod_{G}}}\frac{p(x)}{(p,\prod_{G})}\sqrt{\prod_{G}} \middle| \middle| te, \right. & \text{­­­Equation S.49} \end{matrix}$

$\begin{matrix} \left. = \frac{1}{2}\frac{1}{2^{N}} \middle| \middle| {\sum\limits_{x \in G_{t}}{\rho\left( {x\left| {}_{G} \right)} \right) - {\sum\limits_{x \in G}\left. \rho\left( (x|_{G} \right) \middle| \middle| {}_{\text{tr}}, \right.}}} \right. & \text{­­­Equation S.50} \end{matrix}$

where x|_(G) is the projection of x onto the t elements of G. The overall bias is

$\begin{matrix} {\in_{\text{bias}} = {\sum\limits_{G}{\left\langle \rho,\Pi_{G} \right\rangle\left. \cdot \in_{\text{bias}} \right|_{G}}}} & \text{­­­Equation S.51} \end{matrix}$

To cancel most of the terms for each x, pair elements in G₊ and G₋ that have the minimum Hamming distance of one. Here, δ_(ij) is the Kronecker delta function.

$\begin{matrix} \left. \in_{\text{bias}} \middle| {}_{G} \leq \frac{1}{2}\frac{1}{2^{n}} \middle| \middle| {\sum\limits_{x \in G_{t}}{\left| {\rho(x)} \right|\left( {}_{G} \right)}} - \rho\left( {x\left| {\left. {}_{G}\left( \left( {\oplus 0^{t - 1}1} \right) \right| \middle| \right|\text{tr}} \right)} \right) \right. & \text{­­­Equation S.52} \end{matrix}$

$\begin{matrix} \begin{array}{l} \left. = \frac{1}{2}\frac{1}{2^{N}} \middle| \middle| \mspace{6mu}{\sum\limits_{x \in G_{t}}\left| {\frac{1}{f}\mspace{6mu}{\sum\limits_{i,j = 1}^{t}{\left( {- 1} \right)^{x_{i} + x_{j}}\left| (x) \right)\left( {(j| - \frac{1}{t}\mspace{6mu}{\sum\limits_{i,j = 1}^{t}\left. \left( {- 1} \right)^{x_{i} + x_{t} + ?\mspace{6mu}}\left| {(i)\left( (j| \right)} \right) \middle| \right|_{\text{tr}}}} \right)}}} \right)} \right. \\ \left. = \frac{1}{2}\frac{1}{2^{N}} \middle| \middle| \mspace{6mu}{\sum\limits_{x \in G_{t}}{\mspace{6mu}\frac{1}{f}}}\left\lbrack {\sum\limits_{i = 1}^{t - 1}{\left( {- 1} \right)^{x_{i} + x_{j}}\left| {- \frac{1}{t}\mspace{6mu}{\sum\limits_{i = 1}^{t - 1}\left( {- 1} \right)^{x_{i} + x_{?} + ?}}} \right)}} \right\rbrack(i)\left( (t| \right) \right. \end{array} & \text{­­­Equation S.53} \end{matrix}$

$\begin{matrix} {+ \sum\limits_{j = 1}^{t - 1}\left( {- 1} \right)^{x_{i} + x_{j}}\left| {(t)(j)} \right| - {\sum\limits_{j = 1}^{i - 1}{\left( {- 1^{x_{i} + x_{j} + ??}|t)} \right)\left( \left. \left( (j| \right\rbrack \middle| \right|_{\text{tr}} \right)}}} & \text{­­­Equation S.54} \end{matrix}$

$\begin{matrix} \left. = \frac{1}{2}\frac{1}{2^{N}} \middle| \middle| \mspace{6mu}{\sum\limits_{x \in G_{t}}{\frac{2}{t}\left\lbrack {\sum\limits_{i = 1}^{t - 1}{\left( {- 1} \right)^{x_{t} + x_{i}}\left| {(i)(t)} \right| + {\sum\limits_{j = 1}^{t - 1}{\left( {- 1} \right)^{x_{i} + x_{j}}\left| {(t)(j)} \right|}}}} \right\rbrack}} \middle| \right|_{\text{tr}} & \text{­­­Equation S.55} \end{matrix}$

$\begin{matrix} \left. = \frac{1}{2}\frac{1}{2^{n}} \middle| \middle| {\sum\limits_{x \in G_{t}}{\frac{2}{t}{\sum\limits_{i - 1}^{i - 1}{( - 1)}}^{x_{i} + x_{j}}\left( \left| {(i)\left\langle (t| + \left| {\left. t \right\rangle\left\langle \left( (i| \right) \middle| \right|_{\text{tr} \cdot}} \right) \right.} \right) \right)}} \right. & \text{­­­Equation S.56} \end{matrix}$

Before proceeding, note that ρ(x|_(G)) = ρ(x|_(G)), where x is the conjugate string with all bits flipped. For t odd, the parity flips upon conjugation, so the bias is zero in this case. Thus, restrict to the case where t is even. Now, invoke cancellations between elements of G₊, observing that even and odd-parity substrings of length t - 2 contribute equally, for t > 2:

$\begin{matrix} {\varepsilon_{bias}\left| {}_{G} \leq \mspace{6mu}\frac{1}{2}\frac{1}{2^{n}}\frac{2}{t} \middle| \middle| \mspace{6mu}{\sum\limits_{i = 1}^{t - 1}{\sum\limits_{x \in G_{t}}{\left( {- 1} \right)^{x_{i}x_{t}}\left( |i) \right)\left\langle (t| + \left| {(t)\left( \left. \left( (i| \right) \middle| \right|_{\text{tr}} \right)} \right) \right.}}} \right)} & \text{­­­Equation S.57} \end{matrix}$

$\begin{matrix} {= \frac{1}{2}\frac{1}{2^{n}}\frac{2}{t} \cdot \left\{ \begin{matrix} {\left| \middle| {\sum_{i = 1}^{t - 1}{\left\lbrack {2^{n - 1}(2)} \right\rbrack\left( |i) \right)\left\langle (t| + (t| \right.}} \right\rangle\left\langle (i| \right\rangle\left. \middle| \right|_{\text{tr}}} & {\text{­­­Equation S.58}t = 2} \\ \left| \middle| {\sum_{i = 1}^{t - 1}\left\lbrack {2^{n - t}\left( {2 \cdot \frac{1}{2} \cdot 2^{t - 2} - 2 \cdot \frac{1}{2} \cdot 2^{t - 2}} \right)} \right\rbrack}\left( |i) \right)\left\langle (t| + \left| {\left. t \right\rangle\left. \left( (i| \right) \middle| \right|_{tr}} \right) \right. \right. & {\text{if}t > 2} \end{matrix} \right)} &  \end{matrix}$

$\begin{matrix} {= \left\{ \begin{array}{ll} \left. \frac{1}{2}\frac{1}{2^{n}} \cdot 1 \cdot 2^{n - 1} \middle| \middle| \left( {\left| 1 \right\rangle\left\langle 2 \middle| + \middle| 2 \right\rangle\left\langle 1(|) \middle| \right|_{\text{tr}}} \right) \right. & {\text{­­­Equation S.59}t = 2} \\ 0 & {\text{if}t > 2} \end{array} \right)} &  \end{matrix}$

$\begin{matrix} {= \mspace{6mu}\left\{ {\begin{matrix} \frac{1}{2} \\ 0 \end{matrix}\mspace{6mu}\begin{matrix} {\text{if}\mspace{6mu} t\mspace{6mu} = \mspace{6mu} 2} \\ {\text{if}\mspace{6mu} t\mspace{6mu} > \mspace{6mu} 2} \end{matrix}\mspace{6mu} \cdot} \right)} & \text{­­­Equation S. 60} \end{matrix}$

Thus, the optimal strategy is to choose t = 2 for all G in the POVM, resulting in overall bias

$\begin{matrix} {\in_{\text{bias}}\mspace{6mu} = \mspace{6mu}{\sum\limits_{G}{\left( {p,\mspace{6mu}\prod_{G}} \right)\mspace{6mu} \cdot \mspace{6mu} \in_{\text{bias}}\left| {}_{G} \right)}}} & \text{­­­Equation S. 61} \end{matrix}$

$\begin{matrix} {= \mspace{6mu}\frac{1}{2}\mspace{6mu}{\sum\limits_{G}\left( {\rho\text{,}\mspace{6mu}\prod_{G}} \right)}} & \text{­­­Equation S. 62} \end{matrix}$

$\begin{matrix} {= \frac{1}{2},} & \text{­­­Equation S. 63} \end{matrix}$

since Σ_(G) Π_(G) = 1 and ρ is a normalized density matrix. That is, only one vote (parity and edge) can be outputted deterministically. Otherwise, success is due to guessing:

$\begin{matrix} {\text{Pr}\left\lbrack \text{Adv}\mspace{6mu}\rightarrow\mspace{6mu}\left( {p,\mspace{6mu}\left( {i,j} \right)} \right) \right\rbrack\mspace{6mu} = \mspace{6mu}\frac{1}{2}\mspace{6mu} + \mspace{6mu} \in_{\text{bias}}\mspace{6mu} = \mspace{6mu}\frac{1}{2}.} & \text{­­­Equation S. 64} \end{matrix}$

Fact S.1. For an arbitrary POVM Π = {Π_(a,b)} indexed by a ∈ A, b ∈ B, one can construct POVMs

$\begin{matrix} {P\mspace{6mu} = \mspace{6mu}\left\{ P_{a} \right\}_{a \in A}\mspace{6mu}\text{and}\mspace{6mu} Q_{a}\mspace{6mu} = \mspace{6mu}\left\{ Q_{a,b} \right\}_{b \in B}\mspace{6mu}\text{for}\mspace{6mu} a\mspace{6mu} \in \mspace{6mu} A\mspace{6mu},} & \text{­­­Equation S. 65} \end{matrix}$

such that for any state ρ that Π acts on, applying P, followed by Q_(a), where a is the outcome of P, gives the same output distribution. In particular,

$\begin{matrix} {P_{a}\mspace{6mu} = \mspace{6mu}{\sum\limits_{b \in B}\Pi_{a,b}}\mspace{6mu}\text{and}\mspace{6mu} Q_{a,b}\mspace{6mu} = \mspace{6mu}\sqrt{P_{a}^{+}}\Pi_{a,b}\sqrt{P_{a}^{+}},} & \text{­­­Equation S. 66} \end{matrix}$

where

P_(a)⁺

is the Moore-Penrose pseudoinverse of P_(a). In this case, A = {G | G c [n], |G| = t} and B = {+, -}.

Theorem S.1. Given N copies of the ballot state |ψ_(x)〉, a computationally unbounded adversary Adv can output a string of N′ ≥ N parities p_(l) of edges (i_(l), j_(l)), with probability

$\begin{matrix} {\text{Pr}\left\lbrack Adv\mspace{6mu}\rightarrow\mspace{6mu}\left\{ {p_{l},\mspace{6mu}\left( {i_{l},\, j_{l}} \right)} \right\}\begin{matrix} {N\prime\mspace{6mu} - N} \\ {l = 1} \end{matrix} \right\rbrack\mspace{6mu} \leq \mspace{6mu}\frac{1}{2^{N\prime - N}}} & \text{­­­Equation S.67} \end{matrix}$

Proof. Given N copies of the state |ψ_(x)〉, the adversary cannot output successful forgeries, with probability more than coin flips. To do so, it is generalized that the calculation of the bias in Lemma S.5. Here, the projection is onto a subset G of [n]^(N). Exploiting a data-processing inequality (Fact S.2), let G′ be the union of the N subsets.

$\begin{matrix} {\in_{bias}\left| {{}_{G}\mspace{6mu} \leq \mspace{6mu}\frac{1}{2}\frac{1}{2^{n}}\mspace{6mu}\left\| {\mspace{6mu}{\sum\limits_{x \in G\prime_{l}}{p\left( {x\left| {}_{G\prime} \right)} \right)}}^{\otimes N}} \right) - \mspace{6mu}{\sum\limits_{x \in G\prime}{p\left( {x\left| {}_{G^{l}} \right)} \right)^{\otimes N}\left\| {}_{\alpha} \right)}}} \right)} & \text{­­­Equation S. 68} \end{matrix}$

$\begin{matrix} {= \mspace{6mu}\frac{1}{2}\left\| {\frac{1}{2^{\text{n}}}\mspace{6mu}{\sum\limits_{x \in G_{1}^{l}}{\left\lbrack {p\left( {x\left| {}_{G\prime} \right)} \right)^{\otimes N}\mspace{6mu} - \mspace{6mu} p\left( {x\left| {}_{G\prime} \right)\mspace{6mu} \oplus \mspace{6mu} 0^{t - 1}1} \right)^{\otimes N}} \right\rbrack\left\| a \right)}}} \right)} & \text{­­­Equation S. 69} \end{matrix}$

$\begin{matrix} {= \mspace{6mu}\frac{1}{2}\left\| \frac{1}{2^{n}} \right)\mspace{6mu}{\sum\limits_{x \in G^{l}{}_{t}}\frac{2}{t^{N}}}\mspace{6mu}{\sum\limits_{a}{\sum\limits_{t_{x},l_{x} \neq t}{\left( {- 1} \right)^{\sum_{x}{{({x_{t8}\mspace{6mu} + \mspace{6mu} x_{fx}})} + x_{t}}}\left| {\left( l_{a} \right)\mspace{6mu}\left( {l_{a}\left| \left\| {}_{\text{lr}} \right) \right)} \right)} \right)}}}} & \text{­­­Equation S. 70} \end{matrix}$

$\begin{matrix} \begin{array}{r} {= \mspace{6mu}\frac{1}{2}\left\| {\frac{1}{2^{n}}\frac{1}{t^{N}}} \right)\left\lbrack {{\sum\limits_{x \in G_{t}^{+}}{\sum\limits_{a}{\sum\limits_{la,f_{x} \neq t}\left( {- 1} \right)^{\sum_{a}{{({x_{ta} + x_{ta}})} + x_{t}}}}}}\left| {\left( t_{a} \right)\mspace{6mu}\left( t_{a} \right)} \right)} \right\rbrack} \\ {- \mspace{6mu}{\sum\limits_{x \in G^{t}}{\sum\limits_{n}{\sum\limits_{t_{a},f_{a} \neq t}\left( {- 1} \right)^{\sum{{}_{x}{({x_{tx}\, + \mspace{6mu} x_{ja}})} + x_{t}}}}}}\left| {\left( t_{a} \right)\mspace{6mu}\left( f_{x} \right)\left\| \left\| {}_{\text{lr}} \right) \right)} \right)} \end{array} & \text{­­­Equation S. 71} \end{matrix}$

$\begin{matrix} \begin{array}{l} {= \mspace{6mu}\frac{1}{2}\left\| \frac{1}{2^{n}} \right)\frac{1}{t^{N}}\left\lbrack {\sum\limits_{x \in G_{t}^{l}}{\sum\limits_{\beta}{\sum\limits_{l\beta,l\beta}{\left( {- 1} \right)^{\sum{\begin{array}{l} 1 \\ {x - 3} \end{array}x_{t}}}\left| {\left( t_{\beta} \right)\mspace{6mu}\left( t_{\beta} \right)} \right)}}}} \right\rbrack} \\ {- \mspace{6mu}{\sum\limits_{x \in G\prime}{\sum\limits_{\beta}{{\sum\limits_{l\beta,l\beta}\left( {- 1} \right)^{\sum{\begin{array}{l} 2 \\ {t - 1} \end{array}x_{t}}}}\left| \left( t_{\beta} \right) \right)\left( l_{\beta{\|{\|{}_{\text{tr}})})}} \right)}}}} \end{array} & \text{­­­Equation S. 72} \end{matrix}$

$\begin{matrix} {= \frac{1}{2}\left\| {\frac{1}{2^{n}}\mspace{6mu}{\sum\limits_{x}{\frac{1}{t^{N}}{\sum\limits_{\beta}{\sum\limits_{t_{\beta}f_{\beta}}{\left\lbrack {\left( t_{\beta} \right)\left( t_{\beta} \right)} \right\rbrack\left\| {}_{\text{tr}} \right)}}}}}} \right)} & \text{­­­Equation S. 73} \end{matrix}$

$\begin{matrix} {= \mspace{6mu}\frac{1}{2}\left\| {\frac{1}{t^{N}}{\sum\limits_{\beta}{\sum\limits_{t_{\beta}f\beta}{\left\lbrack {\left( i_{\beta} \right)\left( j_{\beta} \right)} \right\rbrack\left\| {\text{tr} \cdot} \right)}}}} \right)} & \text{­­­Equation S. 74} \end{matrix}$

In Equation S.70 is the difference for each

x ∈ G₊^(′)

flipping x_(t), due to complete interference of phases: |i_(α)〉〈j_(α)| denote the tensor product of basis states, with an odd number of t substitutions; α indexes all such tuples. Crucially, c · x_(t) mod 2 = x_(t) for any odd c. The bit is flipped back in Equation S.71. Inducting the procedure over all bits x_(i) yields Equation S.72: |i_(β)〉〈j_(β)| is composed of a tensor product of an odd number of each basis vector; β indexes all such tuples. For clarity,

$\begin{matrix} {\left| {\left( i_{a} \right)\mspace{6mu}\left( {j_{a}\left| {= \left| i_{1} \right)} \right)} \right)\ldots\left| \left( i_{N} \right) \right)} \right)\mspace{6mu}\left( {j_{1}\left| {\ldots\left( j_{N} \right)} \right)} \right)\left| {\,\text{s}\text{.t}\text{.}\mspace{6mu}\left| \left\{ {i_{a}\mspace{6mu} = \mspace{6mu} t} \right\} \right)| + |\left\{ {t_{s}\mspace{6mu} = \mspace{6mu} t} \right\}\left| {\mspace{6mu} = \mspace{6mu} c\mspace{6mu}\text{for}\mspace{6mu} c} \right|2 = 1\mspace{6mu},} \right)} & \text{­­­Equation S. 75} \end{matrix}$

$\begin{matrix} {\left| {\left( i_{\beta} \right)\mspace{6mu}\left( {j_{\beta}\left| {= \left| i_{1} \right)} \right)} \right)\ldots\left| \left( i_{N} \right) \right)} \right)\mspace{6mu}\left( {j_{1}\left| {\ldots\left( j_{N} \right)} \right)} \right)\left| {\,\text{a}\text{.t}\text{.}\mspace{6mu}\left| \left\{ {i_{b}\mspace{6mu} = \mspace{6mu} i} \right\} \right)| + |\left\{ {j_{b}\mspace{6mu} = \mspace{6mu} i} \right\}\left| {\mspace{6mu} = \mspace{6mu} c_{i}\mspace{6mu}\text{for}\mspace{6mu} c_{i}} \right|2 = 1\mspace{6mu},} \right)} & \text{­­­Equation S. 76} \end{matrix}$

$\begin{matrix} {\text{Vi}_{\text{a}},j_{\text{a}},i_{b},j_{b},i\mspace{6mu} \in \mspace{6mu}\left\{ {\text{1,}\ldots\text{,}t} \right\}.} & \text{­­­Equation S.77} \end{matrix}$

The constraint dictates which terms appear in Equation S.74 imposing

$\begin{matrix} {\in_{\text{bias}}\left| {}_{\text{G}} \right)\mspace{6mu} = \mspace{6mu} 0\mspace{6mu}\text{if}\mspace{6mu} N\mspace{6mu}\text{<}\mspace{6mu}{t/2}.} & \text{­­­Equation S. 78} \end{matrix}$

In the voting scheme, a valid vote consists of an edge (i,j) and the parity of its bits p_(i,j). The overall bias is

$\begin{matrix} {\in_{\text{bias}}\mspace{6mu} = \mspace{6mu}{\sum\limits_{G}{\left\langle {\rho,\mspace{6mu}\Pi_{G}} \right\rangle\mspace{6mu} \cdot}}\mspace{6mu} \in_{\text{bias}{|{}_{G})}\mspace{6mu} \leq \mspace{6mu}}\frac{1}{2},\mspace{6mu}} & \text{­­­Equation S. 79} \end{matrix}$

achieved by the ideal protocol. By reduction (Lemma S.6), a maximum of N votes can be outputted with unity success probability; outputting any more (i.e., a forgery) can only be done through guessing (Equation S.78).

Fact S.2. For any Hermitian operator R and any sub normalized POVM {P_(a)}_(a),

$\begin{matrix} {\sum\limits_{a}{\left\| {\sqrt{P_{a}}R\sqrt{P_{a}}} \right\|_{\text{tr}}\mspace{6mu} \leq \mspace{6mu}\left\| R \right\|_{\text{tr}\mspace{6mu} \cdot}}} & \text{­­­Equation S.80} \end{matrix}$

Lemma S.6. Evaluating the parity of t bits reduces to the evaluation of t/2 pair-wise parities (assuming t even).

Proof. Exploiting associativity of the parity function,

$\begin{matrix} {\underset{\text{i=1}}{\overset{1}{\oplus x_{i}}}\mspace{6mu} = \mspace{6mu}\underset{j = 1}{\overset{1/2}{\oplus}}\left( {x_{j}\mspace{6mu} \oplus \mspace{6mu} x_{j + 1}} \right),\mspace{6mu}} & \text{­­­Equation S.81} \end{matrix}$

where x_(i) ↦ x_(j) is any permutation of the bits.

Security Amplification

Theorem S.2. ∀δ′ >, given = O(N) repetitions of Π_(vote), Pr[N′ > N votes are counted] ≤ δ′

Proof. Generic ballots cast have N′ > N votes, where N copies of |ψx〉 are distributed. The combined ballots look like

$\begin{matrix} {\left\{ {\left( {\left( {i_{1},j_{1}} \right),a_{t_{1/1}}} \right),\ldots,\left( {\left( {i_{\text{N}},j_{N},} \right),a_{i_{N^{\prime}/N^{l}}}} \right)} \right\}\mspace{6mu} \subset \mspace{6mu}|n|^{2}\mspace{6mu} \times \mspace{6mu}\left\{ {0,1} \right\}\mspace{6mu}.} & \text{­­­Equation S.82} \end{matrix}$

Theorem S.1 implies that the N′ - N adversarial votes align in the desired direction with probability ½ each. To avoid collisions between voters and proceed with the protocol, N′ -N ≤ O(N), by Lemma S.2. The following tail bound applies to the votes.

Lemma S.7 (Additive Chernoff Bound).

For X = ∑_(i = 1)^(n) X_(i),

where X_(i) are independent, identically distributed Bernoulli random variables, taking the value 1 with probability p and 0 otherwise,

$\begin{matrix} {\text{Pr}\left\lbrack {\left| {X\mspace{6mu} - \mspace{6mu} E\lbrack X\rbrack} \right|\mspace{6mu} \geq \mspace{6mu}\sqrt{n}\delta} \right\rbrack\mspace{6mu} \leq \, 2e^{- 2\delta^{2}}} & \text{­­­Equation S.83} \end{matrix}$

The influence of the adversarial votes is suppressed by averaging. All votes are counted in one round of the protocol, and the average over r rounds is taken for both the 0 and 1 votes (Algorithm S.1). By linearity, consider the adversarial votes separately. Denote by X the total number of adversarial 0 votes (or 1, by symmetry, since the adversary cannot bias the output):

$\begin{matrix} {X\mspace{6mu} = \mspace{6mu}{\sum\limits_{i = 1}^{r}{\sum\limits_{j = 1}^{\eta i}{x_{ij},}}}} & \text{­­­Equation S.84} \end{matrix}$

where x_(ij) corresponds to round i and vote j in that round, out of η_(i) votes. By Equation S.83, the influence of the adversary is bounded by

$\begin{matrix} {\text{Pr}\left\lbrack {\left| {X\mspace{6mu} - \mspace{6mu} r\eta/2} \right|\mspace{6mu} \geq \mspace{6mu}\sqrt{r\eta}\delta} \right\rbrack\mspace{6mu} \leq \mspace{6mu} 2e^{- 2\delta^{2}},} & \text{­­­Equation S.85} \end{matrix}$

where

$\eta\mspace{6mu} = \mspace{6mu}\max\limits_{i}\eta_{i}.$

Dividing by r to take the average over the rounds yields

$\begin{matrix} {\Pr\left\lbrack {\left| {\overline{X}\mspace{6mu} - \mspace{6mu}\eta/2} \right|\mspace{6mu} \geq \mspace{6mu}\sqrt{\frac{\eta}{r}}\delta} \right\rbrack\mspace{6mu} \leq \mspace{6mu} 2e^{- 2\delta^{2}},} & \text{­­­Equation S.86} \end{matrix}$

where X = X/r. To limit the absolute deviation to be less than 1 with high probability, set r = η = O(N), since a maximum of O(N) adversarial votes can be inputted into one round. More explicitly, for a deviation of c, the number of rounds of averaging is r = η/c².

To compute the margin of the election, subtract the average number of 0 votes from the average number of 1 votes. Since the adversarial 0 or 1 votes are symmetric and both represented by X, their average values cancel within an additive factor 2c = O(1). In majority rule, the election is decided by the sign of the margin. Note further, that in order to estimate the number of 0 and 1 votes, which is necessary to compute a transitive voting function f_(vote) (Definition S.5), this technique only works under the assumption that every voter casts a vote.

Anonymity

Reduction from Passive to Active Adversaries. In the Boykin attack model, it is assumed that the voters that are part of the ring are honest in that they carry out broadcast protocol operations. However, given that there are some subset of malicious voters, stronger model is preferred where a malicious voter W_(i) can apply any unitary operation

U_(W_(i))

to the broadcast input state |x〉. This requires us to amend the attack model of Boykin to allow malicious voters. This amounts to introducing a buffer voter and reasoning about the boundary around an honest voter where the incoming state may be arbitrarily tampered with.

Lemma S.8 (Buffer Voters Scramble Maximally). For any input qubit state ρ, given a buffer voter V_(i′) for every voter V_(i) (honest and malicious), the output state after the voter is ½. Proof. Since the buffer voter V_(i′) is honest, they follow the protocol and apply the quantum one-time pad to the input qubit sent from the adversary. The resulting state is

X^(i′) (Z^(j′) ρZ^(j′))X^(i′).

The voter is also honest and after their application, the state is

X^(i) (Z^(j)(X^(i′))(Z^(j′)) (ρZ^(j′))(X^(i′))Z^(j))X^(i).

It is sent to the adversary. Since i′, j′ are kept private, by the quantum one-time pad, the state to them is uninformative: X^(i)(Z^(j)(I/2)Z^(j))X^(i) = I/2. Note that the voter can still use i to encrypt their broadcasted bit.

Lemma S.9 (Quantum One-Time Pad). Given

$i,j\overset{\text{R}}{\leftarrow}\left\{ {0,1} \right\},\mspace{6mu} X^{i}\left( {Z^{j}\rho Z^{j}} \right)X^{i}\mspace{6mu} = \mspace{6mu} I/2,$

for any single-qubit density matrix ρ.

Theorem S.3. The voting protocol is y-anonymous with fidelity

$\sqrt{1 - \text{γ}^{2}}$

of the GHZ states used in Algorithm S.2.

Proof. In key generation, the X basis measurements do not leak information about the key values i,j. Specifically,

X = U_(QFT)^(†)ZU_(QFT),

where Z is the computational basis and the quantum Fourier transform matrix is specified by

$\begin{matrix} {\left( U_{\text{QFT}} \right)_{ab} = \left( e^{2\text{π}i/N} \right)^{ab},\mspace{6mu} 0 \leq a,b \leq N - 1} & \text{­­­Equation S.87} \end{matrix}$

X and Z are mutually unbiased bases, so they satisfy the following entropic uncertainty relation

$\begin{matrix} {H(X) + H(Z) \geq \log N.} & \text{­­­Equation S.88} \end{matrix}$

The Shannon entropy H(Z) is 0 after Z measurement, so H(X) = log N is maximal; i.e., the measurement outcomes X are uniformly distributed and uninformative. Eavesdroppers are detected via testing. The security analysis of the anonymous broadcast protocol applies. Specifically,

$\begin{matrix} {I\left( E;F(M) \middle| A \right) \leq \left( {4 + 4\sqrt{2}} \right)H\left( {F(K)} \right)\sqrt{1 - F_{\min}},} & \text{­­­Equation S.88} \end{matrix}$

where the mutual information between the eavesdroppers E and a function of the message F(M), conditioned on the announcement A, is bounded by the entropy of the function on the key K.

Notably, if the fidelity of the test measurements is large enough for errors to be correctable by a code, the eavesdropper’s information goes to zero.

Since voters can detect eavesdroppers and abort, the protocol is restricted to the case where a key was successfully generated and show that the distributions of every single voter under announcements in the distributed sum or broadcast are the same. Let A represent the subset of malicious voters. The malicious voters A set a voting configuration {v₁, ..., v_(N)} for all the voters and choose a permutation over the honest voters π: B → B to permute their votes. For simplicity, assume that the voting function is transitive (Definition S.5), i.e., it only depends on the number of 0 and 1 votes. This class includes majority vote via a decision on the margin. Also assume a binary alphabet but note that more than two inputs can still be encoded in a bit string.

Definition S.5. (Transitive Voting Function). The voting function ƒ_(vote): {0,l}^(N) → {0,1} is said to be transitive if

$\begin{matrix} {f_{vote}\left( {v_{1},...,v_{N}} \right) = f_{vote}\left( {\text{π}\left( {v_{1},...,v_{N}} \right)} \right),\forall\text{π} \in S_{N,}} & \text{­­­Equation S.90} \end{matrix}$

where v_(i) ∈ {0,1}, i ∈ [N] ≡ {1, ..., N} are the votes and S_(N) is the symmetric group on N letters. Consider the two cases to be distinguished in the anonymity game.

-   b=0     -   The voters vote in the configuration set by A. Voter V_(i)         announces A_(i) = k_(i) + c_(i)mod N where     -   $k_{i}\overset{\text{R}}{\leftarrow}\left\{ {0,...,N - 1} \right\}$     -   and c_(i) ∈ {0, ..., N - 1}. By injectivity, the probability         distributions are the same:     -   $\begin{matrix}         {P\left( A_{i} \right) = P\left( k_{i} \right).} & \text{­­­Equation S.91}         \end{matrix}$     -   The distribution of the announcements of the honest voters is         then uniform:     -   $\begin{matrix}         {\left( {A_{1},...,A_{|B|}} \right)\overset{R}{\leftarrow}U\left\{ {0,N - 1} \right\}^{\otimes {|B|}}.} & \text{­­­Equation S.92}         \end{matrix}$ -   b = 1     -   The votes are exchanged by the chosen permutation π. Note that         since ƒ_(vote) is transitive, applying π on the honest voters         does not change the outcome of the election and, therefore, the         adversary gains nothing by observing the outcome of the election         as ƒ_(vote)(v₁, ...,v_(N)) = ƒ_(vote) (π(v₁, ..., v_(N))).

Note that the permutation π: i ↦ j does not change the distribution of the announcement A_(i) = k_(i) + c_(j)mod N:

$\begin{matrix} {P\left( A_{i} \right) = P\left( k_{i} \right).} & \text{­­­Equation S.93} \end{matrix}$

The announcements are then sampled uniformly at random:

$\begin{matrix} {\left( {A_{\pi{(1)}},...,A_{\pi{({|B|})}}} \right)\overset{R}{\leftarrow}U\left\{ {0,N - 1} \right\}^{\otimes {|B|}}.} & \text{­­­Equation S.94} \end{matrix}$

The distributions of the announcements A_(i), A_(π(i)) of every voter V_(i) are the same for every permutation π. Given that Pr[b = 0] = Pr[b = 1], there is no bias between the two cases, by Equation S.45. Therefore, the adversary can do no better than flipping a coin.

Further, note that every honest voter V_(i) chooses an edge e_(i) independently and uniformly at random from a random matching

$M_{\frac{n}{2}}.$

Therefore, every honest voter’s announcement is independent and there is no adaptive strategy that A can use to predict some information of an upcoming announcement, assuming Equation S.89 and the distributional equivalence implied by the cases. This means that the total information gained by the adversary is simply the sum of the information gained from each announcement, which is shown to be 0 above because of indistinguishability (Equation S.92 and Equation S.94). This argument also shows where the hidden matching state |ψ_(x)〉 assists in the protocol Π_(vote), as it allows the honest voters V_(i) the ability to cast their vote with a tag uncorrelated to that of other voters or one that is chosen by the tallyman.

Lastly, even with complete knowledge of x, the tallyman T cannot distinguish one announcement from the other since the tallyman does not know which edge corresponds to which voter (with guessing advantage more than y). This is accomplished via the use of Algorithm S.2. To show this, the loss of anonymity from multiple runs of Algorithm S.2 is bounded. Specifically, given the required number of GHZ states, let the minimum starting fidelity of a Bell state be

$\begin{matrix} {F_{\min}^{0} = 1 - \text{ε}} & \text{­­­Equation S.95} \end{matrix}$

for some ∈ > 0. With this assumption, purification protocol for r rounds can be applied. This will increase the fidelity to,

$\begin{matrix} {F_{\min}^{r} = \frac{1}{p_{suc}} \cdot \left( {\left( F_{min}^{r - 1} \right)^{2} + \left( \frac{1 - F_{min}^{r - 1}}{3} \right)^{2}} \right),} & \text{­­­Equation S.96} \end{matrix}$

where

F_(min)^(r)

is the minimum fidelity across all Bell states after r rounds of purification, and,

$\begin{matrix} {p_{suc} = \left( F_{min}^{r - 1} \right)^{2} + \frac{2}{3}F_{min}^{r - 1}\left( {1 - F_{min}^{r - 1}} \right) + \frac{5}{9}\left( {1 - F_{min}^{r - 1}} \right)^{2}} & \text{­­­Equation S.97} \end{matrix}$

where p_(suc) denotes the probability that the purification succeeds. By a Taylor expansion of Equation S.96 using Equation S.95, the following can be obtained

$\begin{matrix} {F_{min}^{1} = 1 - \frac{2}{3}\text{ε} - \frac{2}{3}\text{ε}^{2} + 0\left( \text{ε}^{3} \right) \approx 1 - \frac{2}{3}\text{ε=}\frac{1}{3}\left( {1 + 2F_{min}^{0}} \right)} & \text{­­­Equation S.98} \end{matrix}$

After some algebra, this yields that,

$\begin{matrix} {F_{min}^{r} = \frac{1}{3^{r}}\left( {c_{r} + 2^{r} \cdot F_{min}^{0}} \right)} & \text{­­­Equation S.99} \end{matrix}$

where c₁ = 1 and,

$\begin{matrix} {c_{r} = 3^{r - 1} + 2 \cdot c_{r - 1} = 3^{r} - 2^{r}.} & \text{­­­Equation S.100} \end{matrix}$

This allows us to further simplify Equation S.99 to its final form as,

$\begin{matrix} {F_{min}^{r} = \frac{1}{3^{r}}\left( {3^{r} - 2^{r}\left( {1 - F_{min}^{0}} \right)} \right) = 1 - \left( \frac{2}{3} \right)^{r} \in \text{.}} & \text{­­­Equation S.101} \end{matrix}$

Algorithm S.2 consumes O(N) GHZ states to anonymously transfer 1 qubit and is repeated O(N log N) times for every run of Π_(vote), thereby using O (N² log N) GHZ states in total. Additionally, Π_(vote) itself is repeated O(N) times, bringing the total number of GHZ states that need to be purified to O(N³ log N). Note that a GHZ state can be created from N Bell states with no more than O(N) loss of fidelity, assuming perfect gates in the circuit. Such a circuit implementation has been proposed for the aforementioned GHZ state preparation. Therefore, by a union bound on Lemma S. 1, it can be seen that the total loss of anonymity is,

anonymity leak ≤  ∈ ′ ⋅ O(N⁴log N),

where, ∈’ is the desired fidelity to have γ-anonymity. To ensure this, the anonymity leak is upper bounded by y,

$\begin{matrix} {\text{anonymity leak} \leq \in \prime \cdot O\left( {N^{4}\log N} \right) = \text{γ}\text{.}} & \text{­­­Equation S.102} \end{matrix}$

Using Equation S.101 and the fact that the desired final fidelity by Equation. S102 is,

$1 - \left( \frac{2}{3} \right)^{r} \in = F_{min}^{r} = \sqrt{1 - \frac{\text{γ}^{2}}{N^{8}\log^{2}N},}$

the following is the bound on the number of rounds r required in the purification process,

$\begin{matrix} {r = \log\left( {\frac{4 \in}{3\text{γ}^{2}} \cdot N^{8}\log^{2}N} \right).} & \text{­­­Equation S.103} \end{matrix}$

Now, because the protocol is a recurrence protocol, the number of expected Bell states required to purify one GHZ state to the desired degree of fidelity is O(2^(r)). This yields,

$\begin{matrix} {\#\mspace{6mu}\text{Bell states} = O\left( 2^{\log{({\frac{4 \in}{3\text{γ}^{2}} \cdot N^{8}\log^{2}N})}} \right) = O\left( {\frac{4 \in}{3\text{γ}^{2}}N^{8}\log^{2}N} \right)} & \text{­­­Equation S.104} \end{matrix}$

This can be repeated for all O (N³ log N) GHZ states that will be used in the repetitions of Π_(vote).

A Variant of the Voting Scheme

The following description includes a variant of the voting scheme. It enables savings in quantum communication (Theorem S.4) but requires a more involved security analysis of anonymity.

Each of t tallymen may send s extra copies of the ballot state to each voter, introducing a tag consisting of random pairs of bits and their parities (FIG. 1 ):

$\begin{matrix} {\left( \left( {\left( {i_{1},j_{1}} \right),p_{i_{1}j_{1}}} \right) \right),...,\left( \left( {\left( {i_{s}j_{s}} \right),p_{i_{s}js}} \right) \right) \subset \lbrack n\rbrack^{2} \times \left\{ {0,1} \right\}} & \text{­­­Equation S.105} \end{matrix}$

For the vote to be counted, the tag has to be correct. Extending Equation S.67, the probability to pass authentication without access to the ballot states is exponentially small in the length of the tag:

$\begin{matrix} {\text{Pr}\left\lbrack {\left( {N^{\prime} - N} \right)\text{votes}} \right\rbrack \leq \frac{1}{2^{st}}\frac{1}{2^{N^{\prime} - N}}} & \text{­­­Equation S.106} \end{matrix}$

This feature prevents attacks where unverified adversaries attempt to force the protocol to abort. With tags from multiple tallymen, it forces them to cooperate to verify votes. The resource consumption becomes O(stN log(sN)), times a factor of O((stN)²) for anonymous transmission. For security, the number of copies in the tag is s = O(log N) (Theorem S.5). The number of tallymen t can be some constant greater than one to compare outcomes.

Theorem S.4. ∀δ′ > 0, given s = O( log N) copies of |ψ_(x)〉, Pr[N′ > N″{ votes are counted}] ≤ δ′

Proof. Given s additional copies of the ballot state per voting ballot, the probability of casting adversarial votes is suppressed by a factor

1/2^(S).

Extending the reasoning of Theorem S.2, each voter has O(sN) such attempts, by Lemma S.2. To limit the influence on the e across all voters,

$\begin{matrix} {\frac{sN}{2^{s}} \leq \frac{1}{N}.} & \text{­­­Equation S.107} \end{matrix}$

Then, 2^(s)/s ≥ N², so asymptotically, a tag of length s = O (log N) suffices.

Referring to FIG. 9 , In some embodiments, to amplify security, voters receive several copies of the ballot state from multiple tallymen. A vote is valid if the additional parities are correct. The outcomes from multiple tallymen are compared to suppress cheating.

Referring now to FIG. 10 , a schematic of an example of a computing node is shown. Computing node 10 is only one example of a suitable computing node and is not intended to suggest any limitation as to the scope of use or functionality of embodiments described herein. Regardless, computing node 10 is capable of being implemented and/or performing any of the functionality set forth hereinabove.

In computing node 10 there is a computer system/server 12, which is operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with computer system/server 12 include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems or devices, and the like.

Computer system/server 12 may be described in the general context of computer system-executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. Computer system/server 12 may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.

As shown in FIG. 10 , computer system/server 12 in computing node 10 is shown in the form of a general-purpose computing device. The components of computer system/server 12 may include, but are not limited to, one or more processors or processing units 16, a system memory 28, and a bus 18 that couples various system components including system memory 28 to processor 16.

Bus 18 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, Peripheral Component Interconnect (PCI) bus, Peripheral Component Interconnect Express (PCIe), and Advanced Microcontroller Bus Architecture (AMBA).

Computer system/server 12 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computer system/server 12, and it includes both volatile and non-volatile media, removable and non-removable media.

System memory 28 can include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and/or cache memory 32. Computer system/server 12 may further include other removable/non-removable, volatile/non-volatile computer system storage media. By way of example only, storage system 34 can be provided for reading from and writing to a non-removable, non-volatile magnetic media (not shown and typically called a “hard drive”). Although not shown, a magnetic disk drive for reading from and writing to a removable, non-volatile magnetic disk (e.g., a “floppy disk”), and an optical disk drive for reading from or writing to a removable, non-volatile optical disk such as a CD-ROM, DVD-ROM or other optical media can be provided. In such instances, each can be connected to bus 18 by one or more data media interfaces. As will be further depicted and described below, memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the disclosure.

Program/utility 40, having a set (at least one) of program modules 42, may be stored in memory 28 by way of example, and not limitation, as well as an operating system, one or more application programs, other program modules, and program data. Each of the operating system, one or more application programs, other program modules, and program data or some combination thereof, may include an implementation of a networking environment. Program modules 42 generally carry out the functions and/or methodologies of embodiments as described herein.

Computer system/server 12 may also communicate with one or more external devices 14 such as a keyboard, a pointing device, a display 24, etc.; one or more devices that enable a user to interact with computer system/server 12; and/or any devices (e.g., network card, modem, etc.) that enable computer system/server 12 to communicate with one or more other computing devices. Such communication can occur via Input/Output (I/O) interfaces 22. Still yet, computer system/server 12 can communicate with one or more networks such as a local area network (LAN), a general wide area network (WAN), and/or a public network (e.g., the Internet) via network adapter 20. As depicted, network adapter 20 communicates with the other components of computer system/server 12 via bus 18. It should be understood that although not shown, other hardware and/or software components could be used in conjunction with computer system/server 12. Examples, include, but are not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

The present disclosure may be embodied as a system, a method, and/or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present disclosure.

The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.

Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.

Computer readable program instructions for carrying out operations of the present disclosure may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user’s computer, partly on the user’s computer, as a stand-alone software package, partly on the user’s computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user’s computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.

Aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.

These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.

The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.

The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.

As used herein, a quantum node refers to a node in a quantum network. A quantum node has a quantum memory that can robustly store qubit states. In addition, it is possible to process quantum information within a quantum node. In embodiments employing a fiber network, a quantum nodes can communicate via fibres.

The descriptions of the various embodiments of the present disclosure have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein. 

What is claimed is:
 1. A method of conducting a vote using a quantum network, the method comprising: by a tally quantum node, generating a first plurality of ballot quantum states encoding a first bit string, each of the first plurality of ballot quantum states comprising a plurality of qubits; distributing each of the first plurality of ballot quantum states to exactly one of a plurality of voter quantum nodes via a quantum network; by at least one of the plurality of voter quantum nodes: performing a projective measurement of its one of the first plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the first bit string; reading a vote; computing a first encoded vote based on the parity and vote; broadcasting the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes; providing the first bit string to decode the first encoded vote.
 2. The method of claim 1, further comprising: tallying the vote.
 3. The method of claim 1, wherein each of the plurality of voter quantum nodes: performs a projective measurement of its one of the first plurality of ballot quantum states and thereby determines a parity of a random pair of bits of the first bit string; receives a vote; computes a first encoded vote based on the parity and vote; broadcasts the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes.
 4. The method of claim 1, further comprising: generating a second plurality of ballot quantum states encoding a second bit string, each of the second plurality of ballot quantum states comprising a plurality of qubits; distributing each of the second plurality of ballot quantum states to exactly one of the plurality of voter quantum nodes via the quantum network; by at least one of the plurality of voter quantum nodes: performing a projective measurement of its one of the second plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the second bit string; computing a second encoded vote based on the parity and vote; broadcasting the second encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes; providing the second bit string to decode the second encoded vote.
 5. The method of claim 4, further comprising: averaging the first and second encoded votes to determine the vote.
 6. The method of claim 1, wherein the each of the first plurality of ballot quantum states is given by: $\frac{1}{\sqrt{n}}{\sum\limits_{i = 0}^{n - 1}\left( {- 1} \right)}^{x_{i}}\left| i \right\rangle$ wherein the first bit string has n bits and the x_(i) denotes the i^(th) bit in the first bit string.
 7. The method of claim 1, wherein the quantum network is an optical fiber network.
 8. The method of claim 1, wherein the plurality of qubits of each of the first plurality of ballot quantum states are photons.
 9. The method of claim 1, further comprising: generating the first bit string randomly.
 10. The method of claim 1, further comprising: preparing a shared GHZ state among the tally quantum node and the plurality of voter quantum nodes.
 11. The method of claim 10, wherein preparing the shared GHZ state comprises: distributing a ring of Bell pairs connecting the tally quantum node and the plurality of voter quantum nodes in a ring.
 12. The method of claim 10, wherein distributing each of the first plurality of ballot quantum states comprises: from the shared GHZ state, distilling at least one Bell pair between the tally quantum node and each of the plurality of voter quantum nodes.
 13. The method of claim 10, wherein the first encoded vote and the identifier of the pair of bits are broadcast via the shared GHZ state.
 14. The method of claim 10, further comprising: the first encoded vote and the identifier of the pair of bits are broadcast via the shared GHZ state.
 15. The method of claim 1, wherein computing the first encoded vote comprises adding the parity and vote modulo
 2. 16. The method of claim 1, further comprising: forming an anonymous queue of the plurality of the plurality of voter quantum nodes, wherein the first plurality of ballot quantum states are distributed in order of the anonymous queue.
 17. The method of claim 16, wherein forming the anonymous queue comprises: preparing a shared GHZ state among the tally quantum node and the plurality of voter quantum nodes; each of the plurality of voter quantum nodes broadcasting a queue entry request via the shared GHZ state; each of the plurality of voter quantum nodes detecting a successful queue entry request by computing a multiparty secure sum.
 18. The method of claim 16, wherein the first encoded vote is broadcast in queue order.
 19. The method of claim 10, further comprising: broadcasting by at least one of the plurality of quantum nodes a complaint bit via the GHZ state; tallying the complaint bit by computing a multiparty secure sum on the GHZ state.
 20. The method of claim 1, wherein reading the vote comprises receiving a user input.
 21. The method of claim 2, further comprising outputting a result to a user according to the tally.
 22. A method of casting a vote using a quantum network, the method comprising: receiving a ballot quantum state via a quantum network, the ballot quantum state encoding a first bit string in a plurality of qubits; performing a projective measurement of its one of the first plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the first bit string; reading a vote; computing a first encoded vote based on the parity and vote; broadcasting the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes.
 23. A method of tallying a vote using a quantum network, the method comprising: receiving a plurality of encoded votes, each with an associated identify, wherein each associated identifier identifies a pair of bits randomly selected from a predetermined bit string, each encoded vote is based on a vote and a parity, the parity being based on a projective measurement of a ballot quantum state encoding the predetermined bit string; receiving the predetermined bit string; based on the predetermined bit string and the associated identifiers, decoding the plurality of encoded votes; tallying the plurality of decoded votes.
 24. A system comprising: a quantum network; a tally quantum node operatively coupled to the quantum network; a plurality of voter quantum nodes operatively coupled to the quantum network, wherein: the tally quantum node is configured to: generate a first plurality of ballot quantum states encoding a first bit string, each of the first plurality of ballot quantum states comprising a plurality of qubits; distribute each of the first plurality of ballot quantum states to exactly one of the plurality of voter quantum nodes via the quantum network; each of the plurality of voter quantum nodes is configured to: perform a projective measurement of its one of the first plurality of ballot quantum states, and thereby determining a parity of a random pair of bits of the first bit string; read a vote; compute a first encoded vote based on the parity and vote; broadcast the first encoded vote and an identifier of the pair of bits to each other of the plurality of voter quantum nodes via the quantum network. 